很抱歉,我对android开发很陌生,现在我想锻炼一下,当用户按下按钮时,它会启动Actitity2,类似地,当用户在Activity2中按下取消按钮时,会返回到原始活动。
我参考了关于编写应用程序的书,但它似乎不起作用,编码看起来很简单,如下所示:
public class NameIndex extends Activity
{
// called when the activity is first created
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.name_index);
public button_cancel_click (View view) { /////// <-- ERROR AT THIS LINE
Intent intent = new Intent (this, GameIndex.class);
startActivity(intent);
}
} // end method onCreate
}
xml布局如下:
<TableRow android:id="@+id/tableRow1"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:paddingBottom="10dp"
android:paddingTop="10dp"
android:layout_span="2" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_span="1"
android:layout_weight="1"
android:onClick="button_cancel_click"
android:text="Cancel" />
</TableRow>
Eclipse报告上述错误行为">button_cancel_click无法解析为类型",而对于
view"参数视图的非法修饰符;只允许使用final"。
如何解决这个问题?
您正在OnCreate函数体中编写button_cancel_click函数的定义,如下更正:
public void onCreate(Bundle savedInstanceState)
{
.
.
.
}
public button_cancel_click (View view)
{
.
.
}
侦听器应该以这种方式添加:
super.onCreate(savedInstanceState);
setContentView(R.layout.name_index);
Button button = (Button ) findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent (this, GameIndex.class);
startActivity(intent);
}
});