Класс PreferenceCategory не может быть найден на устройствах перед леденцом на палочке

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

В некоторых случаях мне также нужно показывать настройки отскока на мобильных устройствах, а на устройствах до Lollipop фрагмент вылетает при инфляции с помощью этой трассировки стека:

E/AndroidRuntime: FATAL EXCEPTION: main
              android.view.InflateException: Binary XML file line #25: Error inflating class <unknown>
                  at android.view.LayoutInflater.createView(LayoutInflater.java:613)
                  at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
                  at android.view.LayoutInflater.onCreateView(LayoutInflater.java:660)
                  at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685)
                  at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
                  at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
                  at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
                  at android.support.v7.preference.PreferenceGroupAdapter.onCreateViewHolder(PreferenceGroupAdapter.java:280)
                  at android.support.v7.preference.PreferenceGroupAdapter.onCreateViewHolder(PreferenceGroupAdapter.java:35)
                  at android.support.v7.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:5482)
                  at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4707)
                  at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:4617)
                  at android.support.v17.leanback.widget.GridLayoutManager.getViewForPosition(GridLayoutManager.java:998)
                  at android.support.v17.leanback.widget.GridLayoutManager$3.createItem(GridLayoutManager.java:1485)
                  at android.support.v17.leanback.widget.SingleRow.appendVisibleItems(SingleRow.java:111)
                  at android.support.v17.leanback.widget.Grid.appendOneColumnVisibleItems(Grid.java:364)
                  at android.support.v17.leanback.widget.GridLayoutManager.appendOneColumnVisibleItems(GridLayoutManager.java:1721)
                  at android.support.v17.leanback.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:1904)
                  at android.support.v7.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3028)
                  at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:2906)
                  at android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3283)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1663)
                  at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1521)
                  at android.widget.LinearLayout.onLayout(LinearLayout.java:1434)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1663)
                  at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1521)
                  at android.widget.LinearLayout.onLayout(LinearLayout.java:1434)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.widget.RelativeLayout.onLayout(RelativeLayout.java:1021)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1663)
                  at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1521)
                  at android.widget.LinearLayout.onLayout(LinearLayout.java:1434)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
                  at android.view.View.layout(View.java:14008)
                  at android.view.ViewGroup.layout(ViewGroup.java:4373)
                  at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:1892)
                at android.view.Vie

Никто не знает, что идет после "на android.view.Vie", но я локализовал проблему, и это потому, что мобильные устройства не могут найти класс / макет PreferenceCategory. Если я удаляю PreferenceCategories из файла Preferences.xml - все работает отлично.

Также была добавлена ​​библиотека настроек поддержки, но это не решило проблему.

У вас есть идеи, почему это может произойти?

PS: Если вам нужна дополнительная информация - я добавлю больше источников и отвечу на все вопросы.

Большое спасибо!

0 ответов

Другие вопросы по тегам