AlertDialog设置两个按钮的位置与宽度
时间: 2023-08-18 07:06:16 浏览: 126
AlertDialog通常使用setPositiveButton()和setNegativeButton()方法来设置对话框的按钮。这些按钮默认是在对话框底部排列,且宽度相等。
如果你想要自定义按钮的位置和宽度,可以使用setView()方法来自定义AlertDialog的布局。你可以创建一个布局文件,然后在其中添加两个按钮,并设置它们的位置和宽度。然后在AlertDialog中使用setView()方法将该布局文件设置为对话框的视图。
以下是一个示例布局文件,其中包含两个按钮,一个在左侧,一个在右侧,并且它们的宽度不同:
```
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<Button
android:id="@+id/left_button"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="wrap_content"
android:text="Left" />
<Button
android:id="@+id/right_button"
android:layout_width="0dp"
android:layout_weight="2"
android:layout_height="wrap_content"
android:text="Right" />
</LinearLayout>
```
然后在代码中,你可以使用以下方法来设置AlertDialog的视图,并将其中的按钮设置为自定义布局中的按钮:
```
AlertDialog.Builder builder = new AlertDialog.Builder(context);
View customLayout = LayoutInflater.from(context).inflate(R.layout.custom_layout, null);
builder.setView(customLayout);
Button leftButton = customLayout.findViewById(R.id.left_button);
Button rightButton = customLayout.findViewById(R.id.right_button);
leftButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Do something when left button is clicked
}
});
rightButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// Do something when right button is clicked
}
});
AlertDialog dialog = builder.create();
dialog.show();
```
这样,你就可以自定义AlertDialog的按钮位置和宽度了。
阅读全文