2

我对“setOnClickListener(onSave)”和“View.OnClickListener”有一些问题</p>

下面是我的代码:

package apt.tutorial;

import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class LunchList extends Activity {
Restaurant r = new Restaurant ();

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
}

//save button
//be notified when the button is clicked
Button save =(Button)findViewById(R.id.save);

save.setOnClickListener(onSave){
}

private View.OnClickListener onSave=new View.OnClickListener();
public void onClick(View v) {
    EditText name=(EditText)findViewById(R.id.name);
    EditText address=(EditText)findViewById(R.id.addr);

    r.setName(name.getText().toString());
    r.setAdress(address.getText().toString());
}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}
}

对于 save.setOnClickListener(onSave),我收到错误 save.setOnClickListener(onSave),对于 View.OnClickListener,我收到错误无法实例化类型 View.OnClickListener。

我查看了这个网站并用谷歌搜索了这个问题,但没有找到解决方案。我希望你们能帮助我。

问候。

4

2 回答 2

2

后面去掉分号

private View.OnClickListener onSave=new View.OnClickListener();

并在 onClickListener 的匿名构造函数中编写 onClick(View v) 或使用以下代码更改您的代码。

private View.OnClickListener onSave=new View.OnClickListener(
public void onClick(View v) {
    EditText name=(EditText)findViewById(R.id.name);
    EditText address=(EditText)findViewById(R.id.addr);

    r.setName(name.getText().toString());
    r.setAdress(address.getText().toString());
});
Button save =(Button)findViewById(R.id.save);
save.setOnClickListener(onSave);
于 2012-10-09T15:24:44.840 回答
0

试试下面的代码:

         start.setOnClickListener(new OnClickListener() {

        public void onClick(View arg0) {

            mainactivity();

        }
    });
于 2012-10-09T15:28:15.090 回答