I have seen that there\'s been some similar questions but the answers to those haven\'t helped me so far. The full error:
java.lang.IllegalStateExcept
You need to change android.support.v7.widget.AppCompatButton
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.AppCompatButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Random Game"
android:id="@+id/button_random"
android:layout_gravity="center_horizontal"
android:onClick="onClick" />
</LinearLayout>
I had the same issue, in my case I have 2 activities using the same layout so when I changed the OnClick
event name it will crash in other activity try to check the setContentView
layout in the crashing activity
Please rename onClick
method to anything other than that, Android thinks you are calling the internal onClick
from View.java
exposed via OnClickListener
interface
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Random Game"
android:id="@+id/button_random"
android:layout_gravity="center_horizontal"
android:onClick="myOnClick" />
and in your Activity
public class StartActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start);
}
public void myOnClick(View v) {
Log.d("DEBUG", "CLICKED " + v.getId());
}
}
You can check the View documentation here
I had the same problem and in my case, I changed Button
in XML to android.support.v7.widget.AppCompatButton
and it worked.
Code with Error:
<Button
.... />
Fixed Code:
<android.support.v7.widget.AppCompatButton
.... />
In my case I missed closing bracket at the end.
android:onClick="@{(v) -> CommentHandler.selectGallery(v)".
It should be like this.
android:onClick="@{(v) -> CommentHandler.selectGallery(v)}".