AlertDialog添加单选框列表,并且修改里面显示字体大小
时间: 2024-02-01 22:02:33 浏览: 89
要在AlertDialog中添加单选框列表,你可以使用setSingleChoiceItems()方法,该方法的第一个参数是单选框选项的字符串数组,第二个参数是默认选中的选项的索引,第三个参数是单选框选项被点击时触发的事件。例如:
```java
final String[] items = {"选项1", "选项2", "选项3"};
final int[] fontSizes = {14, 16, 18};
int defaultItem = 1;
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setSingleChoiceItems(items, defaultItem, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
// 点击单选框选项时触发的事件
// 可以在此处修改字体大小
TextView textView = ((AlertDialog) dialog).getListView().getChildAt(which);
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, fontSizes[which]);
}
});
builder.setPositiveButton("确定", null);
builder.setNegativeButton("取消", null);
AlertDialog dialog = builder.create();
dialog.show();
```
在这个例子中,我还定义了一个字体大小的数组,每个选项对应一个字体大小。在单选框选项被点击时,我通过AlertDialog的getListView()方法获得选项的TextView,然后使用setTextSize()方法修改其字体大小。
注意,这里使用了TypedValue.COMPLEX_UNIT_SP参数来指定字体大小的单位为sp,这样可以保证在不同的设备上显示的字体大小一致。
阅读全文