2012-05-15 5 views
2

Я не могу заставить это работать.Фрагменты Android с совместимой библиотекой

Я нашел много подобных вопросов здесь, примеры. Но ничего не помогает и ничего не работает. У кого-нибудь есть работающие фрагменты в Android 2.2 с библиотекой android.support.v4? (Если вы загрузите его где-нибудь.)

Я почти плачу, потому что не могу найти, что не так!

ошибка такая же, как многие люди имеют:

05-15 18:20:20.583: W/dalvikvm(1521): Unable to resolve superclass of Lmy/fragment/test/FragmentTestActivity; (8) 
05-15 18:20:20.583: W/dalvikvm(1521): Link of class 'Lmy/fragment/test/FragmentTestActivity;' failed 
05-15 18:20:20.593: D/AndroidRuntime(1521): Shutting down VM 
05-15 18:20:20.593: W/dalvikvm(1521): threadid=1: thread exiting with uncaught exception (group=0x4001d800) 
05-15 18:20:20.703: E/AndroidRuntime(1521): FATAL EXCEPTION: main 
05-15 18:20:20.703: E/AndroidRuntime(1521): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{my.fragment.test/my.fragment.test.FragmentTestActivity}: java.lang.ClassNotFoundException: my.fragment.test.FragmentTestActivity in loader dalvik.system.PathClassLoader[/data/app/my.fragment.test-1.apk] 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2585) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at android.app.ActivityThread.access$2300(ActivityThread.java:125) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at android.os.Handler.dispatchMessage(Handler.java:99) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at android.os.Looper.loop(Looper.java:123) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at android.app.ActivityThread.main(ActivityThread.java:4627) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at java.lang.reflect.Method.invokeNative(Native Method) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at java.lang.reflect.Method.invoke(Method.java:521) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at dalvik.system.NativeStart.main(Native Method) 
05-15 18:20:20.703: E/AndroidRuntime(1521): Caused by: java.lang.ClassNotFoundException: my.fragment.test.FragmentTestActivity in loader dalvik.system.PathClassLoader[/data/app/my.fragment.test-1.apk] 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at java.lang.ClassLoader.loadClass(ClassLoader.java:573) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at java.lang.ClassLoader.loadClass(ClassLoader.java:532) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2577) 
05-15 18:20:20.703: E/AndroidRuntime(1521):  ... 11 more 
05-15 18:20:23.423: I/Process(1521): Sending signal. PID: 1521 SIG: 9 

решаемые !!!! Кто есть эти предупреждения перед ошибкой:

05-16 10:08:00.033: W/dalvikvm(1695): Unable to resolve superclass of Lmy/fragment/test/FragmentTestActivity; (7) 
05-16 10:08:00.076: W/dalvikvm(1695): Link of class 'Lmy/fragment/test/FragmentTestActivity;' failed 

Если экспортируют андроид-поддержки-v4 направо приложение:

Настройка Java Build Path -> Заказ и вкладка Экспорт ->набор Флажок андроид-support- v4.jar

(Возможно, нужно удалить существующий во-первых)

он перемещает эту библиотеку на свой APK (как я понимаю)

+0

В сообщении об ошибке говорится, что он ищет что-то с именем my.fragment.test/my.fragment.test.FragmentTestActivity Может быть, имя не должно включать полное имя пакета? (Это просто попало мне в глаза, когда я посмотрел сообщение об ошибке) – Jens

+0

Вы добавили FragmentTestActivity в свой манифест? – Tushar

+0

Да, я поставил. И я пробовал разные способы - полное имя пакета и просто имя фрагмента. Не помогло. – Ksice

ответ

4

У вас должно быть 1 FragmentActivity с фрагментами внутри. То, что вы делаете, - это пытаться поместить действия (fragactivity) внутри xml. Это не сработает. Попытайтесь иметь только 1 фрагментацию верхнего уровня, а затем сделать другой фрагментами, а затем поместить эти фрагменты внутри вашего xml.

0

Почему у вас есть два действия под названием FragmentTestActivity? или просто пишет ошибку? вы объявили это в манифесте?

+0

просто дубликат, моя ошибка :) это всего лишь одна FragmmentActivity в приложении – Ksice

-1

Попробуйте заменить android:name="classpath" на class=""classpath.

+0

. не помогло – Ksice

1

Поскольку вы, очевидно, только узнаете об этом, я буду расширять ответ Варпзита, чтобы попытаться помочь вам (вы должны принять его ответ, чтобы он получил кредит, так как он правильный, и он ответил первым).

Это:

public class DetailsActivity extends FragmentActivity 

должно быть так:

public class DetailsActivity extends Fragment 

Как делать любые другие вкладки, которые вы хотите отобразить в рамках этой первой деятельности.

Должна быть только одна функция FragmentActivity, если вы не начнете вторую операцию (и оставьте первую), которая также будет иметь фрагменты, то это же относится.

+0

Думаю, это не имеет значения.Я не использую эту вторую активность прямо сейчас, я могу ее полностью удалить, и ошибка все тот же – Ksice