在某些时候,我需要将警报对话框与问题排队给用户,等待他/她一一回答。代码如下所示:
for (int i=0; i<SomeValue; i++)
{
Msg = "Do you want to add " + mylist.get(i) + " to the system?";
AlertDialog ADB = new AlertDialog.Builder(this)
.setIcon(android.R.drawable.ic_dialog_alert)
.setTitle("New document " + mylist.get(i))
.setMessage(Msg)
.setPositiveButton("Add", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// Function to develop
}
})
.setNegativeButton("Ignore", null)
.show();
}
那么,开发onClick功能:我怎么知道哪个是相关的警报对话框?例如,我如何从onClick函数中知道当前警报对话框的标题是什么?
现在,您无法访问默认标题,因此您需要使用 : setCustomTitle(View v)
- 只需将其设置为一个简单的布局XML文件,标题TextView
在其中。
在 onClick()
方法中将DialogInterface
转换为AlertDialog
,如下所示:
((AlertDialog)dialog)
现在,您可以像这样访问所需的任何内容:
((AlertDialog)dialog).findViewById(R.id.YOUR_TITLE_TEXTVIEW_ID).getText()
你应该看看DialogFragments。创建一个扩展 DialogFragment 的类。onClickListener 应该有权访问片段变量和方法 - 其中可能包括 title
使用的是匿名内部类,因此只有一个AlterDialog
将调用此onClick()
方法,即您正在构建的方法。您无需检测单击了哪个Dialog
按钮,因为只有一个按钮。如果您出于其他原因需要标题,请随时使用其他建议。