2014-07-03 101 views
-2

我想實現簡單的按鈕點擊事件,但編譯時出錯代碼。Android按鈕OnClick錯誤

下面是完整的代碼:

public class MainActivity extends Activity{ 

Button button1; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    button1 = (Button) findViewById(R.id.button1); 

    addListenerOnButton(); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.activity_main, menu); 
    return true; 
} 

public void addListenerOnButton() { 
    button1 = (Button) findViewById(R.id.button1); 
    button1.setOnClickListener(new OnClickListener() { 
     public void onClick(View arg0) { 

     } 
    }); 
} 
} 

的編譯器會發出錯誤addListenerOnButton方法,該方法如下:

enter image description here

請幫助。

+1

卸下進口DialogInterface.OnClickListener並添加進口view.OnClickListener ... – Lal

回答

2

當方法需要View.OnClickListener時,您正在創建DialogInterface.OnClickListener。

嘗試:

public void addListenerOnButton() { 
    button1 = (Button) findViewById(R.id.button1); 
    button1.setOnClickListener(new View.OnClickListener() { 
     public void onClick(View arg0) { 

     } 
    }); 
} 
3

您已經導入DialogInterface.OnClickListener而不是View.OnClickListener

修復導入或使您想要顯式的類與new View.OnClickListener() { ...

4
button1.setOnClickListener(new OnClickListener() { 
    public void onClick(View arg0) { 

    } 
}); 

更改爲

button1.setOnClickListener(new View.OnClickListener() { 
    public void onClick(View arg0) { 

    } 
}); 

您是進口無效OnClickListenerDialogInterface.OnClickListener而不是View.OnClickListener

+0

它的工作。謝謝 – Azeem

+0

歡迎您 –