Button setonclicklistener error

北城以北 提交于 2019-12-18 13:32:38

问题


I am having a problem right now with setOnClickListener.

When i put this following line:

button.setOnClickListener(this);

And run the application then it does not run and shows a message that "Application closed forcefully".

Could you please help me how I can set button onclick event in Android 2.2?


回答1:


See if the code below works for you...

button.setOnClickListener(new OnClickListener() {              
  @Override
  public void onClick(View v) 
  {
      Toast.makeText(getApplicationContext(), "Hello World", Toast.LENGTH_LONG).show();
  }    
});      

Remember to add }); at the end.




回答2:


another possible reason ( happened to me ) is your activity must implement OnClickListener

public class MainActivity extends Activity implements OnClickListener ...



回答3:


For defining button click event in android, You can try the below code:

public class Main_Activity extends Activity {


    private Button myButton;

    @Override
    public void onCreate(Bundle savedInstanceState) {


    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    myButton = (Button) findViewById(R.id.Button01);
    myButton.setOnClickListener(new Button_Clicker());
}

class Button_Clicker implements Button.OnClickListener
{
    @Override
    public void onClick(View v) {

       if(v==myButton)
       {
                Toast.makeText(v.getContext(), "Hello!! button Clicked", Toast.LENGTH_SHORT).show();

       }    
}
}

}




回答4:


Although it's been a long time, thought it might help others who have this problem, it took me many trials to get it right. But i think what finally solved my problem was setting the clickable attribute of a button in the layout's xml to true.
Code sample:

<Button android:text="Button" android:id="@+id/button1"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:clickable="true">
</Button>

Further, if you would've looked at the DDMS perspective, you would've seen that the cause of the error was NullPointerException, which ofcourse was showing because clickable wasn't set. Correct me if i am wrong.




回答5:


Type View.onClickListener instead of Button on ClickListener




回答6:


Check if in the class definition there is implements OnClickListener



来源:https://stackoverflow.com/questions/3545007/button-setonclicklistener-error

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!