如何在没有AlertDialog.Builder的情况下设置DialogInterface.OnClickListener?

时间:2011-09-21 07:05:48

标签: android dialog onclick alertdialog

我想创建自定义AlertDialog,但没有AlertDialog.Builder。我将ListView设置为内容视图,并希望在其项目上设置DialogInterface.OnClickListener。

这是我的自定义MyAlertDialog的方法onCreate()扩展了AlertDialog。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Context context = getContext();
    setTitle("Custom title");
    ListView listView = new ListView(context);
    listView.setAdapter(new ArrayAdapter<String>(context, android.R.layout.simple_list_item_1, new String[] { "One", "Two" }));
    listView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
    setContentView(listView);
}

我多次阅读过有关DialogInterface,Dialog和AlertDialog的文档,但我没有找到像“AlertDialog.setOnClickListener()”这样的选项。

解决方案必须没有AlertDialog.Builder。

1 个答案:

答案 0 :(得分:2)

改为使用OnItemClickListener

如果您想在不同的地方使用对话框,请在对话框中添加一个功能,并尝试使整个代码更具可重用性。

public void setOnItemClickListener(OnItemClickListener listener){
    listView.setOnItemClickListener(listener);
}
相关问题