Android:我怎样才能将对话框放入循环中
我正在尝试制作活动屏幕,其中协议将显示在对话框中。 如何使对话框在用户每次按“取消”或“不同意”时重复出现。Android:我怎样才能将对话框放入循环中,android,android-layout,android-activity,dialog,android-dialog,Android,Android Layout,Android Activity,Dialog,Android Dialog,我正在尝试制作活动屏幕,其中协议将显示在对话框中。 如何使对话框在用户每次按“取消”或“不同意”时重复出现。 并在“同意”上继续活动 我同意,在提供“取消”或“否”选项的同时,不提供除接受之外的其他选项,您可以使用视图的方法callOnClick来实现它 这将允许您在用户每次单击“否”或“取消”时触发该对话框。但是,这只适用于从按钮触发原始对话框的假设,因为您没有提供任何代码来查看(您的活动及其xml布局): 我同意,在提供“取消”或“否”选项的同时,不提供除接受之外的其他选项,您可以使用视图的
并在“同意”上继续活动 我同意,在提供“取消”或“否”选项的同时,不提供除接受之外的其他选项,您可以使用视图的方法callOnClick来实现它 这将允许您在用户每次单击“否”或“取消”时触发该对话框。但是,这只适用于从按钮触发原始对话框的假设,因为您没有提供任何代码来查看(您的活动及其xml布局):
我同意,在提供“取消”或“否”选项的同时,不提供除接受之外的其他选项,您可以使用视图的方法callOnClick来实现它 这将允许您在用户每次单击“否”或“取消”时触发该对话框。但是,这只适用于从按钮触发原始对话框的假设,因为您没有提供任何代码来查看(您的活动及其xml布局):
删除“不同意”按钮并将“可取消”设置为false当对话框再次显示时,为取消提供选项是没有意义的。这主意不好,但放进去是有道理的。由于若用户不同意,则会向其显示协议,所以应用程序应重新显示协议,或者可能会说“您必须同意”,然后重新显示。谢谢你的建议!然后在不同意时关闭应用程序移动“不同意”按钮并将“可取消”设置为False当对话框再次显示时,为取消提供选项是没有意义的。这主意不好,但放进去是有道理的。由于若用户不同意,则会向其显示协议,所以应用程序应重新显示协议,或者可能会说“您必须同意”,然后重新显示。谢谢你的建议!如果不同意,请关闭应用程序
public class MainActivity extends AppCompatActivity {
final Context context = this;
private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.a_main_btn);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final View view = v;
AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(context);
alertDialogBuilder.setTitle("Dialog Title");
alertDialogBuilder
.setMessage("Click yes to exit dialog")
.setCancelable(false)
.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
MainActivity.this.finish();
}
})
.setNegativeButton("No", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
view.callOnClick();
}
});
AlertDialog alertDialog = alertDialogBuilder.create();
alertDialog.show();
}
});
}