2

我对Android很陌生。在我的活动中,当我需要检测按钮上的点击时,我实现了 OnClickListener。在我当前的活动中,我必须实现“YouTubePlayer.OnInitializedListener”,所以我不能扩展 OnClickListener。如何检测点击事件?

4

4 回答 4

6

其实View.OnClickListener是一个interface。你有implements它,不是extend。Java不支持从多个类扩展,但可以实现多个接口

于 2013-10-21T09:44:49.333 回答
2
public class MyActivity extends Activity implements OnClickListener, YouTubePlayer.OnInitializedListener
{
   //Your code here

    button = (Button) findViewById(R.id.btn);
    button.setOnClickListener(this);


    @Override
public void onClick(View v) {
    // TODO Auto-generated method stub
    if(v.equals(button))
    {

    }
}
于 2013-10-21T09:47:00.190 回答
2

试试这个代码

 public void addListenerOnButton() {
        button = (Button) findViewById(R.id.button_id_in_xml);
        button.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View arg0) {

            //Do your stuffs   

            }
        });
    }
于 2013-10-21T09:47:44.153 回答
2

正如其他人所说,OnClickListener是一个接口,所以你必须实现它,而不是扩展。但是,如果您仍在寻找替代方案,请尝试将其用作匿名内部类:

button.setOnClickListener(new OnClickListener()
{
     public void onClick(View v)
     {
          //do stuff when clicked
     }
}
)
于 2013-10-21T09:48:20.813 回答