ビルダーを作成するコード:
builder = new AlertDialog.Builder(this);
builder.setPositiveButton("connect",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
devices.get(currentPos).setConnected(true);
}
});
builder.setNegativeButton("dismiss",
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// User cancelled the dialog
}
});
builder.setView(getLayoutInflater().inflate(
(R.layout.activity_device_details), null));
builder.setTitle("more information");
builder.setView() から R.layout.activity_device_details に注意してください。これには、次のコードでダイアログを作成するときに入力したい TextView がいくつかあります。
BPDevice dev = new BPDevice();
dev = devices.get(position);
AlertDialog dialog = builder.create();
((TextView) dialog.findViewById(R.id.name)).setText(dev.getName());
dialog.show();
次の行が原因で nullpointerException が発生します: ((TextView) dialog.findViewById(R.id.name)).setText(dev.getName());
TextViews を適切に埋めるにはどうすればよいですか?