FATAL EXCEPTION: Error inflating class fragment when try add cardCornerRadius

Viewed 62

My problem occur when I try to modify a CardView corner radius No problem if haven't "app:cardCornerRadius="@dimen/corner_radius_card" field When i add it, no problem in build and run app, the problem occur when I try navigate to a CardView

XML

    <com.google.android.material.card.MaterialCardView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:onClick="@{() -> clickListener.onClick(testExam)}"
    app:cardCornerRadius="@dimen/corner_radius_card"
    app:cardBackgroundColor="@android:color/white"
    app:cardElevation="2dp"
    app:cardPreventCornerOverlap="true">

FATAL log

E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.toeicquiz, PID: 22608
android.view.InflateException: Binary XML file line #23 in com.example.toeicquiz:layout/list_item_test_exam: Binary XML file line #23 in com.example.toeicquiz:layout/list_item_test_exam: Error inflating class <unknown>
Caused by: android.view.InflateException: Binary XML file line #23 in com.example.toeicquiz:layout/list_item_test_exam: Error inflating class <unknown>
Caused by: java.lang.reflect.InvocationTargetException
    at java.lang.reflect.Constructor.newInstance0(Native Method)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
    at android.view.LayoutInflater.createView(LayoutInflater.java:852)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:1004)
    at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:959)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:657)
    at android.view.LayoutInflater.inflate(LayoutInflater.java:532)
    at androidx.databinding.DataBindingUtil.inflate(DataBindingUtil.java:126)
    at androidx.databinding.ViewDataBinding.inflateInternal(ViewDataBinding.java:1409)
    at com.example.toeicquiz.databinding.ListItemTestExamBinding.inflate(ListItemTestExamBinding.java:89)
    at com.example.toeicquiz.databinding.ListItemTestExamBinding.inflate(ListItemTestExamBinding.java:75)
    at com.example.toeicquiz.ui.home.testbook.TestBookDetailAdapter$ViewHolder$Companion.from(TestBookDetailAdapter.kt:52)
    at com.example.toeicquiz.ui.home.testbook.TestBookDetailAdapter.onCreateViewHolder(TestBookDetailAdapter.kt:18)
    at com.example.toeicquiz.ui.home.testbook.TestBookDetailAdapter.onCreateViewHolder(TestBookDetailAdapter.kt:9)
    at androidx.recyclerview.widget.RecyclerView$Adapter.createViewHolder(RecyclerView.java:7078)
    at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:6235)
    at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6118)
    at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6114)
    at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2303)
    at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1627)
    at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1587)
    at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:665)
    at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4134)
    at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
    at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
    at android.view.View.layout(View.java:24475)
    at android.view.ViewGroup.layout(ViewGroup.java:7383)
    at androidx.constraintlayout.widget.ConstraintLayout.onLayout(ConstraintLayout.java:1873)
    at android.view.View.layout(View.java:24475)
    at android.view.ViewGroup.layout(ViewGroup.java:7383)
    at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
    at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
    at android.view.View.layout(View.java:24475)
    at android.view.ViewGroup.layout(ViewGroup.java:7383)
    at androidx.constraintlayout.widget.ConstraintLayout.onLayout(ConstraintLayout.java:1873)
    at android.view.View.layout(View.java:24475)
    at android.view.ViewGroup.layout(ViewGroup.java:7383)
    at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
    at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
    at android.view.View.layout(View.java:24475)
    at android.view.ViewGroup.layout(ViewGroup.java:7383)
    at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1829)
    at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1673)
    at android.widget.LinearLayout.onLayout(LinearLayout.java:1582)
    at android.view.View.layout(View.java:24475)
    at android.view.ViewGroup.layout(ViewGroup.java:7383)
1 Answers

Try to add static corner radius

app:cardCornerRadius="10dp"

instead of

app:cardCornerRadius="@dimen/corner_radius_card"

If it works, then might be problem in your dimen file.

Related