ClassNotFoundException предпочтение панели поиска - PullRequest
0 голосов
/ 11 ноября 2011

Я пытаюсь реализовать настройку панели поиска в настройках своих живых обоев.Проблема в том, что я продолжаю получать ClassNotFoundException.

. Я создал подкласс (, который можно посмотреть здесь ), чтобы создать панель поиска, а затем добавил следующее в мои wallpaper_settings.xml * 1006.*

<custom.android.mypackage.SeekBarPreference 
    android:title="XXXXXXXXX"
    android:summary="XXXXXXXXXXX"
    android:key="duration"
    android:dialogMessage="Something duration"
    android:defaultValue="5"
    android:text=" minutes"
    android:max="100"
    />

Мой класс SeekBarPreference.java находится в том же пакете, что и моя основная активность.Есть ли что-то, что мне нужно добавить в мой файл манифеста?

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="custom.android.mypackage"
  android:versionCode="1"
  android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" />

<uses-feature android:name="android.software.live_wallpaper" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
 <uses-permission android:name="android.permission.SET_WALLPAPER_HINTS"/>
<application android:icon="@drawable/icon" android:label="@string/app_name">
        <service 
        android:name=".MainActivity"
        android:enabled="true"
        android:icon="@drawable/icon"
        android:label="@string/service_name"
        android:permission="android.permission.BIND_WALLPAPER">
        <intent-filter android:priority="1" >
            <action android:name="android.service.wallpaper.WallpaperService" />
        </intent-filter>
        <meta-data 
            android:name="android.service.wallpaper" 
            android:resource="@xml/wallpaper" />
    </service>
     <activity android:exported="true"
        android:label="@string/wallpaper_settings"            
        android:name=".WallpaperSettings"/> 
  <activity
        android:name=".SeekBarPreference" 
android:label="@string/wallpaper_settings" /> 
</application>


11-11 12:32:37.308: ERROR/AndroidRuntime(8419):  
Caused by:java.lang.ClassNotFoundException: custom.android.mypackage.SeekBarPreference in loader dalvik.system.PathClassLoader[/data/app/custom.android.mypackage-2.apk]
11-11 12:32:37.308: ERROR/AndroidRuntime(8419):     at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240)
11-11 12:32:37.308: ERROR/AndroidRuntime(8419):     at java.lang.ClassLoader.loadClass(ClassLoader.java:551)
11-11 12:32:37.308: ERROR/AndroidRuntime(8419):     at java.lang.ClassLoader.loadClass(ClassLoader.java:511)
11-11 12:32:37.308: ERROR/AndroidRuntime(8419):     at android.preference.GenericInflater.createItem(GenericInflater.java:375)
11-11 12:32:37.308: ERROR/AndroidRuntime(8419):     at android.preference.GenericInflater.createItemFromTag(GenericInflater.java:430)
11-11 12:32:37.308: ERROR/AndroidRuntime(8419):     ... 20 more

1 Ответ

0 голосов
/ 11 ноября 2011

SeekBarPreference - это customView, а не активность.поэтому

 <activity
        android:name=".SeekBarPreference" 
android:label="@string/wallpaper_settings" /> 

не может его найти.удалить его из списка

...