因此,截至目前,我正在制作一个Android应用程序,其中包含多个布局文件,这些文件交换按钮单击。目前我遇到了问题。我有一个用户单击一个按钮,打开一个带有多个单选按钮的AlertDialog,然后选择一个然后单击确定。这设置了一个全局CharSequence
然后,一旦他们确定这是他们想要的,他们将点击完成进入下一个屏幕。这是完成按钮的代码。
<Button android:layout_height="wrap_content" android:id="@+id/doneEventButton" android:text="@string/doneEventButton" android:layout_width="138dp" android:onClick="nextEvent"></Button>
以下是nextEvent
的代码。
public void nextEvent()
{
if (eventVarString == "Send A Text")
{
setContentView(R.layout.send_text);
}
else if (eventVarString == "Make A Call")
{
setContentView(R.layout.make_call);
}
else if (eventVarString == "Open An App")
{
setContentView(R.layout.open_app);
}
else if (eventVarString == "Send An Email")
{
setContentView(R.layout.send_email);
}
else if (eventVarString == "Go To A Website")
{
setContentView(R.layout.go_to_a_website);
}
}
这是弹出AlertDialog并设置全局变量的代码。
public void typeOfEvent(View v)
{
final CharSequence[] items = {"Send A Text", "Make A Call", "Open An App", "Send An Email", "Go To A Website"};
AlertDialog.Builder builder = new AlertDialog.Builder(SchedulerActivity.this);
builder.setTitle("Choose An Event");
builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
eventVarString = items[item];
Toast.makeText(getApplicationContext(), items[item], Toast.LENGTH_SHORT).show();
}
});
builder.setPositiveButton("Yes",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
TextView addEventVarText = (TextView) findViewById(R.id.eventChosen);
addEventVarText.setText(eventVarString);
Toast.makeText(SchedulerActivity.this, "Success", Toast.LENGTH_SHORT).show();
}
});
builder.setNegativeButton("No",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Toast.makeText(SchedulerActivity.this, "Fail", Toast.LENGTH_SHORT).show();
}
});
AlertDialog alert = builder.create();
alert.show();
}
这是我单击“完成”按钮时从“强制关闭”生成的LogCat。
答案 0 :(得分:2)
将参数View
添加到事件处理程序。
public void nextEvent(View view)