您的位置:首页 > 移动开发 > Android开发

Android 改变AlertDialog中View字体的大小

2014-04-18 11:56 417 查看
Android framework 中并不提供对AlertDialog的title和message字体样式的更改,如有特殊需求的都是自定义对话框。

由于项目需求不得不更改系统AlertDialog的字体样式,我采用了反射的方法来获取内部title和message的view从而改变其样式。

try{
Field field= AlertDialog.class.getDeclaredField("mAlert");
field.setAccessible(true);
AlertController controller=(AlertController)field.get(dialog);
Log.i("temp", "mAlert:  "+controller.toString());
Field viewField=AlertController.class.getDeclaredField("mMessageView");
viewField.setAccessible(true);
TextView message=(TextView)viewField.get(controller);
Log.i("temp", "mAlert:  "+message);
message.setText("hello reflect!");
message.setTextSize(10);
} catch (Exception e) {
Log.i("temp", "E:mAlert:  "+e.toString());
}


有问题请留言
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  AlertDialog 字体