获取错误“id无法解析或不是字段”

时间:2012-07-10 09:47:34

标签: android

我的私人View.OnClickListner onSave = new View.OnclickListner()收到“无法解析ID或不是字段”的错误。

我收到错误“参数onSave的非法修饰符;只允许最终版本”。

activity.java文件和布局文件中的ID也相同。

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button save = (Button) findViewById(R.id.save);
    save.setOnClickListener(onSave);

    private View.OnClickListener onSave  = new View.OnClickListener() {
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            EditText name = (EditText)findViewById(R.id.name);
            EditText address = (EditText)findViewById(R.id.add);

布局代码

<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
                  android:layout_width="fill_parent"
                  android:layout_height="fill_parent"
                  android:orientation="vertical"
        <TableLayout
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:stretchColumns="1">

            <TableRow
                <TextView android:text="Name    :        " />
                <EditText android:id="@+id/name"></EditText>
             ></TableRow>

            <TableRow
                <TextView android:text="Address    :    "/>
                <EditText android:id="@+id/add"</EditText>
            ></TableRow>

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

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="@string/hello" />
    </LinearLayout>

1 个答案:

答案 0 :(得分:2)

您的按钮的ID是button1,而不是save,所以这一行:

Button save =(Button) findViewById(R.id.save);

应该是

Button save =(Button) findViewById(R.id.button1);

或者,如果您想更清楚,可以将其更改为:

android:id="@+id/save_button"

Button save =(Button) findViewById(R.id.save_button);