Да я шучуFoenix писал(а): ну элегантным решение не назовешь. Присутствие таймера в программе - плохой код.
Михаил посоветовал пока этим голову не засорятьFoenix писал(а):Лучше изучить их жизненный цикл получше и сделать что хочешь.
Да я шучуFoenix писал(а): ну элегантным решение не назовешь. Присутствие таймера в программе - плохой код.
Михаил посоветовал пока этим голову не засорятьFoenix писал(а):Лучше изучить их жизненный цикл получше и сделать что хочешь.
Ну вот к примеру у меня устройство порой тупит на несколько секунд, потому что внутренняя память похоже умирает (физически умирает), а за это время секунда пройдетДа я шучуПросто в моем случае эта секунда действительно не критична.
Михаила слушаться надо, это его любимая фраза.
Даже не знаю что и сказать.. Сделал и действительно работает. Причем и через броадкаст, и через интерфейс. Когда делал это 2 недели назад, то фрагмент добавлялся только при запуске приложения. А после поворота экрана не хотел добавляться ни после onActivityCreated, ни после onStart, ни после onResume. Видать напортачил тогда где то..Mikhail_dev писал(а):
Я не пойму, почему не сделать быстро и практично, дабы не зависеть от таймера (с таймером кода больше =) )
К сожалению сейчас не обладаю хорошим каналом чтобы посмотреть, но в ближайшее время посмотрю.Mikhail_dev писал(а):Показать ошибку падения. Как узнать - посмотрите у меня в подписи ссылку на вебинар.
Код: Выделить всё
4997-4997/com.zzz.myapplication E/AndroidRuntime﹕ FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.zzz.myapplication/com.zzz.myapplication.MainActivity}: android.view.InflateException: Binary XML file line #21: Error inflating class fragment
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2121)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2146)
at android.app.ActivityThread.access$700(ActivityThread.java:140)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:177)
at android.app.ActivityThread.main(ActivityThread.java:4947)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
at dalvik.system.NativeStart.main(Native Method)
Caused by: android.view.InflateException: Binary XML file line #21: Error inflating class fragment
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:710)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:752)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:760)
at android.view.LayoutInflater.inflate(LayoutInflater.java:495)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
at android.support.v7.app.ActionBarActivityDelegateBase.setContentView(ActionBarActivityDelegateBase.java:228)
at android.support.v7.app.ActionBarActivity.setContentView(ActionBarActivity.java:102)
at com.zzz.myapplication.MainActivity.onCreate(MainActivity.java:30)
at android.app.Activity.performCreate(Activity.java:5207)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2085)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2146)
at android.app.ActivityThread.access$700(ActivityThread.java:140)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:177)
at android.app.ActivityThread.main(ActivityThread.java:4947)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalArgumentException: Binary XML file line #21: Must specify unique android:id, android:tag, or have a parent with an id for com.zzz.myapplication.Fragment2
at android.app.Activity.onCreateView(Activity.java:4813)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:686)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:752)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:760)
at android.view.LayoutInflater.inflate(LayoutInflater.java:495)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
at android.support.v7.app.ActionBarActivityDelegateBase.setContentView(ActionBarActivityDelegateBase.java:228)
at android.support.v7.app.ActionBarActivity.setContentView(ActionBarActivity.java:102)
at com.zzz.myapplication.MainActivity.onCreate(MainActivity.java:30)
at android.app.Activity.performCreate(Activity.java:5207)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2085)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2146)
at android.app.ActivityThread.access$700(ActivityThread.java:140)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:177)
at android.app.ActivityThread.main(ActivityThread.java:4947)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
at dalvik.system.NativeStart.main(Native Method)

Столкнулся тоже с такой проблемой, после первой ссылки в Google на StackOverflow:t0psecret писал(а):у меня onAttach(Activity activity) depricated
а onAttach(Context context) не вызывается при создании
Т.е чтобыIf you use the the framework fragments and the SDK version of the device is lower than 23, OnAttach(Context context) wouldn't be called.
I use support fragments instead, so deprecation is fixed and onAttach(Context context) always gets called.
Код: Выделить всё
onAttach(Context context)