java - Inflate Exception Binary XML file line # Error inflating class TextView
问题描述
好的,我在编程时遇到了几次这个 logcat 错误。9/10 它发生在 imageView 上,我可以通过调整可绘制对象的大小或将所述可绘制对象放在更高密度的文件夹中来解决它,但这次有很大不同。从字面上看,就在昨天,该应用程序运行良好,但现在突然当我单击一个加载片段的按钮时,此错误被称为:
android.view.InflateException: Binary XML file line #27: Binary XML file line #27: Error inflating class TextView
at android.view.LayoutInflater.inflate(LayoutInflater.java:539)
at android.view.LayoutInflater.inflate(LayoutInflater.java:423)
at com.figurativefootball.figurativefootball.FlipCardAdapter.onCreateViewHolder(FlipCardAdapter.java:67)
at com.figurativefootball.figurativefootball.FlipCardAdapter.onCreateViewHolder(FlipCardAdapter.java:27)
at android.support.v7.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:6685)
at android.support.v7.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:5869)
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5752)
at android.support.v7.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:5748)
at android.support.v7.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2232)
at android.support.v7.widget.GridLayoutManager.layoutChunk(GridLayoutManager.java:556)
at android.support.v7.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1519)
at android.support.v7.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:614)
at android.support.v7.widget.GridLayoutManager.onLayoutChildren(GridLayoutManager.java:170)
at android.support.v7.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:3812)
at android.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:3529)
at android.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:4082)
at android.view.View.layout(View.java:16668)
at android.view.ViewGroup.layout(ViewGroup.java:5439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at android.view.View.layout(View.java:16668)
at android.view.ViewGroup.layout(ViewGroup.java:5439)
at android.support.constraint.ConstraintLayout.onLayout(ConstraintLayout.java:1858)
at android.view.View.layout(View.java:16668)
at android.view.ViewGroup.layout(ViewGroup.java:5439)
at android.support.design.widget.CoordinatorLayout.layoutChild(CoordinatorLayout.java:1191)
at android.support.design.widget.CoordinatorLayout.onLayoutChild(CoordinatorLayout.java:876)
at android.support.design.widget.CoordinatorLayout.onLayout(CoordinatorLayout.java:895)
at android.view.View.layout(View.java:16668)
at android.view.ViewGroup.layout(ViewGroup.java:5439)
at android.support.v4.widget.DrawerLayout.onLayout(DrawerLayout.java:1171)
at android.view.View.layout(View.java:16668)
at android.view.ViewGroup.layout(ViewGroup.java:5439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at android.view.View.layout(View.java:16668)
at android.view.ViewGroup.layout(ViewGroup.java:5439)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
at android.view.View.layout(View.java:16668)
at android.view.ViewGroup.layout(ViewGroup.java:5439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at android.view.View.layout(View.java:16668)
at android.view.ViewGroup.layout(ViewGroup.java:5439)
at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1743)
at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1586)
at android.widget.LinearLayout.onLayout(LinearLayout.java:1495)
at android.view.View.layout(View.java:16668)
at android.view.ViewGroup.layout(ViewGroup.java:5439)
at android.widget.FrameLayout.layoutChildren(FrameLayout.java:336)
at android.widget.FrameLayout.onLayout(FrameLayout.java:273)
at com.android.internal.policy.PhoneWindow$DecorView.onLayout(PhoneWindow.java:2720)
at android.view.View.layout(View.java:16668)
at a
the following is binary line #27:
<TextView
android:id="@+id/playerSetPosition"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:gravity="center"
android:textColor="@color/maroon"
android:textAllCaps="true"
android:textSize="20sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
这是java代码这是在布局应该被膨胀的适配器内部
@Override
public FlipCardAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
int viewType) {
CardView cv =
(CardView) LayoutInflater.from(
parent.getContext()).inflate(
R.layout.flip_card_image, parent, false);
return new FlipCardAdapter.ViewHolder(cv);
}
我真的很难过。有什么事吗?
解决方案
如果有人有同样的问题,我希望这会有所帮助:
重申一下,如果在 imageView 上发生这种情况,请将您的可绘制对象移动到更高密度的文件夹或调整其大小。有时它显然可能只是一个 xml 错字。就我而言,出于某种原因,升级到 android studio 3.0.1 后,属性:“android:textAllCaps:”true”导致崩溃。删除此属性后一切恢复正常。为什么?我不知道。必须成为 api 中的 android bug
推荐阅读
- android - Videoview url 不起作用,但在 WebView Android 中工作
- android - 如何自动将 App Bundle 发布到 Google Play 商店?
- python - 使用数组更改列中的所有熊猫数据框单元格
- php - Readfile 返回一个空文件
- java - JPA:从另一个表中加入特定列
- php - 为 foreach() 提供的参数无效
- angular - Angular - 对多个 HTTP 请求进行排序
- react-native - 小吃栏中的 onDismiss 功能在 react-native-paper 中不起作用
- javascript - 在 mapStateToProps 之前初始化状态?
- merge - Puppet - 深度合并查找 default_value 并返回 hiera 哈希