Я пытаюсь реализовать пользовательский MapView. Внутри моего MapActivity (названный mainmap) У меня есть внутренний класс, который расширяет MapView:Пользовательский MapView бросает NoSuchMethodException, но он есть!
private class Lmapview extends MapView{
public Lmapview(Context context, AttributeSet attrs) {
super(context, attrs);
gestures = new GestureDetector(mainmap.this, new GestureListener(this));
}
public boolean OnTouchEvent(MotionEvent event){
return gestures.onTouchEvent(event);
}
}
Я мой main.xml отформатированный, чтобы найти внутренний класс, как так:
<?xml version="1.0" encoding="utf-8"?>
<view
xmlns:android="http://schemas.android.com/apk/res/android"
class="com.mondo.tbuddy.mainmap$Lmapview"
android:id="@+id/mapview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true"
android:apiKey=*****
/>
Кроме того, в Androidmanifest. xml, у меня есть соответствующая запись <uses-library android:name="com.google.android.maps"/>
.
Когда я пытаюсь запустить мое приложение, я получаю (среди прочего) в LogCat:
ERROR/AndroidRuntime (14999): Вызванный по: android.view.InflateException: Binary линия XML файл # 2: Ошибка накачивания класс com.mondo.tbuddy.mainmap $ Lmapview
Это вызвано этой записи я нахожу в LogCat:
ERROR/AndroidRuntime (14999): Вызванный по: java.lang.NoSuchMethodException: Lmapview (Context, AttributeSet)
Если я правильно понимаю, что мое приложение рушится, потому что Android говорит он не находит соответствующий конструктор для моего настраиваемого MapView (класс Lmapview). Как вы можете видеть выше, однако, он определен и соответствует подписи, которую он ищет.
Может ли кто-нибудь дать мне некоторое представление?
Спасибо.
его не только внутренний класс, его частный, тоже – WarrenFaith
это тоже, конечно :) – Key
Я не понимаю решения :( – max4ever