改变世界的是这样一群人,他们寻找梦想中的乐园,当他们找不到时,他们亲手创造了它

android开发:弹框(AlertDialog)和提示信息Toast字体大小颜色设置

一、AlertDialog:

 

AlertDialog.Builder builder = new AlertDialog.Builder(ReturnActivity.this, android.support.design.R.style.Base_Theme_AppCompat_Dialog_Alert);
builder.setTitle("温馨提示");
builder.setMessage("是否进行下一个病人?");
builder.setPositiveButton("是", new DialogInterface.OnClickListener() {
  @Override
  public void onClick(DialogInterface dialogInterface, int i) {
    //处理你的操作
    
  }
});
builder.setNegativeButton("否", null);
AlertDialog dialog = builder.create();
//弹框设置背景颜色
final Window window = dialog.getWindow();
window.setBackgroundDrawable(new ColorDrawable(Color.WHITE));
dialog.show();
//弹框设置字体颜色 dialog.getButton(AlertDialog.BUTTON_POSITIVE).setTextColor(Color.BLUE); dialog.getButton(DialogInterface.BUTTON_NEGATIVE).setTextColor(Color.BLUE); try {   //获取mAlert对象   Field mAlert = AlertDialog.class.getDeclaredField("mAlert");   mAlert.setAccessible(true);   Object mAlertController = mAlert.get(dialog);   //获取mMessageView并设置大小颜色   Field mMessage = mAlertController.getClass().getDeclaredField("mMessageView");   mMessage.setAccessible(true);   TextView mMessageView = (TextView) mMessage.get(mAlertController);   mMessageView.setTextColor(Color.BLUE);   //mMessageView.setTextSize(30);   //获取mTitleView并设置大小颜色   Field mTitle = mAlertController.getClass().getDeclaredField("mTitleView");   mTitle.setAccessible(true);   TextView mTitleView = (TextView) mTitle.get(mAlertController);   mTitleView.setTextColor(Color.BLUE);   //mTitleView.setTextSize(30); } catch (NoSuchFieldException e) {   e.printStackTrace(); } catch (IllegalAccessException e) {   e.printStackTrace(); }

 

二、Toast:

 

private Toast mToast;
private void showTip(final String str){
    runOnUiThread(new Runnable() {
        @Override
        public void run() {
            if (mToast == null) {
                mToast = Toast.makeText(getApplicationContext(), "",
                        Toast.LENGTH_SHORT);
                LinearLayout layout = (LinearLayout) mToast.getView();
                TextView tv = (TextView) layout.getChildAt(0);
                tv.setTextSize(18);
          tv.setTextColor(R.color.white);
            }
            //mToast.cancel();
            mToast.setGravity(Gravity.CENTER, 0, 0);
            mToast.setText(str);
            mToast.show();
        }
    });
}

 例如:Toast提示"登录成功",直接使用showTip("登录成功")即可。

注意:fragment里面使用时将runOnUiThread替换成getActivity().runOnUiThread即可。

 

posted @ 2022-10-22 10:38  水狼一族  阅读(1198)  评论(0编辑  收藏  举报
改变世界的是这样一群人,他们寻找梦想中的乐园,当他们找不到时,他们亲手创造了它