【发布时间】:2013-11-29 05:45:22
【问题描述】:
我正在第一次为我的客户制作安卓应用程序。他需要在应用程序中实现多种语言。所以,我放了一些相关的布局,点击它会变成特定的语言。但是现在,要放置一个“警报对话框”以进行选择确认。为此,我制作了一个警告框并在肯定按钮中实现了一个 switch 语句。但是,它不起作用,我没有任何错误。:(这是我的一段代码:
rl_german.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog();;
}
});
rl_english.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
AlertDialog();
}
});
}
private void AlertDialog()
{
new AlertDialog.Builder(this)
.setTitle("")
.setMessage("Are you sure you want to change the language?")
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
switch(which){
case R.id.rl_english:
startActivity(new Intent(Language.this,HomeActivity2.class));
break;
case R.id.rl_german:
break;
case R.id.rl_french:
break;
}
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// do nothing
}
})
.show();
}
但是,如果我直接在“OnClick”方法中调用“startActivity”。它工作正常。任何人都可以帮助我吗?在此先感谢:)
【问题讨论】:
-
先关闭对话框,然后开始新的活动...
-
代替 Language.this 使用 getApplicationContext() 并告诉我。
-
它不工作的朋友:(
-
看我的回答。您正在与错误的
id进行比较
标签: android switch-statement android-alertdialog