Нет просмотра для идентификатора <адрес> для фрагмента xFragmentAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Нет просмотра для идентификатора <адрес> для фрагмента xFragment

Сообщение Anonymous »

Проблема в том, что иногда это сбои. Использование Firebase Crashlytics.
Ошибка стека такова: < /p>

Код: Выделить всё

Fatal Exception: java.lang.IllegalArgumentException: No view found for id 0x7f090326 (com.sienarsystemsmx.pocketcoach:id/fragment_container) for fragment SocialFragment{317bdbe} (3b045dcb-fd7d-4d10-9c87-7c4f19bcc5d9 id=0x7f090326) at androidx.fragment.app.FragmentStateManager.createView(FragmentStateManager.java:514) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:261) at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:1901) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:1819) at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:1762) at androidx.fragment.app.FragmentManager$5.run(FragmentManager.java:547) at android.os.Handler.handleCallback(Handler.java:1000) at android.os.Handler.dispatchMessage(Handler.java:104) at android.os.Looper.loopOnce(Looper.java:242) at android.os.Looper.loop(Looper.java:362) at android.app.ActivityThread.main(ActivityThread.java:8448) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:552) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:992)

и код следующим:
class principalFragment : Fragment() {
private lateinit var prefs : Prefs
private lateinit var binding: FragmentPrincipalBinding
private val mOnNavigationItemSelectedListener = BottomNavigationView.OnNavigationItemSelectedListener {item->
prefs.actualTab = item.itemId
prefs.tabSocial = 0
when (item.itemId) {
R.id.social_page -> {
println("Social Pressed")
replaceFragment(SocialFragment(),"social1")
return@OnNavigationItemSelectedListener true
}
R.id.diario_page -> {
println("Diario Pressed")
replaceFragment(DiarioFragment(),"diario1")
return@OnNavigationItemSelectedListener true
}
R.id.entrenamiento_page -> {
println("Entrenamiento Pressed")
replaceFragment(EntrenamientoFragment(),"entrenamiento1")
return@OnNavigationItemSelectedListener true
}
R.id.peso_page -> {
println("Peso Pressed")
replaceFragment(PesoFragment(),"peso1")
return@OnNavigationItemSelectedListener true
}
R.id.avance_page -> {
println("Avance Pressed")
replaceFragment(AvanceFragment(),"avance1")
return@OnNavigationItemSelectedListener true
}
}
false

}
override fun onCreateView(
inflater: LayoutInflater, container: ViewGroup?,
savedInstanceState: Bundle?
): View {
FirebaseCrashlytics.getInstance().setCustomKey("last_oncreate_view", "Principal")
prefs = Prefs(requireActivity().applicationContext)
binding = FragmentPrincipalBinding.inflate(inflater)
binding.bottomNavigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener)
when(prefs.actualTab){
R.id.social_page -> {
replaceFragment(SocialFragment(),"social")
}
R.id.diario_page -> {
replaceFragment(DiarioFragment(),"diario")
}
R.id.entrenamiento_page -> {
replaceFragment(EntrenamientoFragment(),"entrenamiento")
}
R.id.peso_page -> {
replaceFragment(PesoFragment(),"peso")
}
R.id.avance_page -> {
replaceFragment(AvanceFragment(),"avance")
}
else-> {
if (isAdded) replaceFragment(SocialFragment(),"else Tab:" + prefs.actualTab)
}
}
return binding.root
}

override fun onDestroy() {
super.onDestroy()
}

private fun replaceFragment(fragment: Fragment,name:String) {
val fragmentTransaction = requireActivity().supportFragmentManager.beginTransaction()
val data = getString(R.string.tres_strings,"replace_fragment" , "TabName:$name.Container:",R.id.fragment_container.toString())
FirebaseCrashlytics.getInstance().setCustomKey("fragment_container", data)
FirebaseCrashlytics.getInstance().setCustomKey("fragment_to_change", fragment.id)
fragmentTransaction.replace(R.id.fragment_container,fragment)
fragmentTransaction.commit()
}

}
< /code>
Я добавил много пользовательских ключей, чтобы попытаться получить ошибку, но единственное, что является общим, - это состояние lyfecicle, которое является Oneresume. < /p>
Есть идея?>

Подробнее здесь: https://stackoverflow.com/questions/794 ... -xfragment
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»