我是Android开发的新手,我还在阅读文档.顺便说一下,当我点击一个按钮时,我正在尝试添加一个事件.这是代码:
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText1"
android:layout_below="@+id/editText1"
android:layout_marginTop="24dp"
android:text="Execute"
android:onClick="onClickRadGard" />
Run Code Online (Sandbox Code Playgroud)
我以这种方式声明onClickRadGrad:
public class MainActivity extends ActionBarActivity {
final Button buttonx = (Button) findViewById(R.id.button1);
buttonx.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// Perform action on clicks
}
});
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
Run Code Online (Sandbox Code Playgroud)
我不知道问题在哪里因为Eclipse告诉我这个:

你有什么建议吗?你可以在这里找到完整的代码:链接.
几点建议:
你android:onClick="onClickRadGard"在xml中声明了.这意味着您的活动将期望找到具有以下签名的方法:
public void onClickRadGard(View view) {
}
Run Code Online (Sandbox Code Playgroud)
如果没有声明你的应用程序将崩溃.当您按下时,将调用此方法android:id="@+id/button1",因此您无需调用setOnClickListener它.
关于你得到的编译时错误,我看了你在链接中发布的代码.这两行必须被定义后setContentView,在体内onCreate
final Button buttonx = (Button) findViewById(R.id.button1);
buttonx.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//other code
}
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
46 次 |
| 最近记录: |