也许我在这里遗漏了一些明显的东西,但是我很难为AlertDialog的主体设置自定义视图。这是我正在做的设置自定义视图:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(View.inflate(getContext(), R.layout.dialog_body, null));
}
视图不是设置AlertDialog正文的内容,而是放在整个屏幕上。如何获取视图只是为了替换AlertDialog消息体?
答案 0 :(得分:2)
您正在通过调用setContentView
设置活动的视图,这就是占用整个屏幕的原因。您也在我假设的活动的onCreate
方法中执行此操作,您需要在onCreateDialog
方法中执行此操作。
下面是docs的链接和示例。
public Dialog onCreateDialog(int id) {
Dialog dialog = null;
AlertDialog.Builder builder = new AlertDialog.Builder(app);
AlertDialog alert = null;
builder.setTitle("A title")
.setCancelable(true)
.setView(myView);
alert = builder.create();
return alert;
}