【发布时间】:2010-06-18 22:26:56
【问题描述】:
我需要在按钮按下时出现自定义对话框。这是我的代码:
Button button3 = (Button) findViewById(R.id.Button03);
button3.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
final Dialog custdialog = new Dialog(this);
custdialog.setContentView(R.layout.custom_drink);
custdialog.setTitle("Custom Drink");
custdialog.setCancelable(false);
/etc.
然而,在这一行:final Dialog custdialog = new Dialog(this);
我收到一条错误消息,提示“构造函数 Dialog(new View.OnClickListener(){}) 未定义”。
我尝试用其他东西替换“this”,但没有成功。奇怪的是,我在这一行出现错误,因为我的项目中有完全相同的东西(除了不同的名称和东西),在一个开关下面(像这样:
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.settings:
final Dialog settingsdialog = new Dialog(this);
settingsdialog.setContentView(R.layout.custom_dialog);
settingsdialog.setTitle("Settings");
settingsdialog.setCancelable(false);
而且那个很好用……嗯。
【问题讨论】:
-
您是否尝试过 Context.getApplicationContext() 而不是这个?
-
我可以把“getApplicationContext()”放在那里并运行,但是当我按下按钮时我得到一个FC。
-
Context.getApplicationContext() 反而给了我一个错误“无法定义上下文”
标签: java android button dialog customdialog