我正在开发一个用于编辑列表项的AlertDialog。我可以用Builder.setView传递编辑器布局,并且可以从正按钮回调中获得结果,但是我看不到初始化视图的方法。有一个EditText应该显示一个特定的字符串,以此类推。是可行的吗?
我意识到我可以子类化Dialog,但似乎我需要更多的实用程序代码来实现相同的结果。似乎不太干净。

最佳答案

简单地说,通过事先放大视图来保留视图的引用:

LayoutInflater inflater = this.getLayoutInflater();
View dialogView = inflater.inflate(R.layout.alert_label_editor, null);
dialogBuilder.setView(dialogView);

然后,将您的EditText引用为:
EditText editText = (EditText) dialogView.findViewById(R.id.label_field);

10-08 13:46
查看更多