国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

Android Dialog 設(shè)置字體大小的具體方法

2020-04-11 12:03:08
字體:
供稿:網(wǎng)友

先看下面圖片:

這是我在做登錄頁面的時候,調(diào)用系統(tǒng)的ProgressDialog 進行等待,可是看起來很不協(xié)調(diào),左邊的等待圖片過大,右邊文字過小,看起來老別扭,雖然功能上不存在什么問題,但是我有強迫癥,看不順的就像弄掉。可是找了好久,沒發(fā)現(xiàn) ProgressDialog  有一個方法是可以設(shè)置字體的。

于是我又來CSDN查找解決方案,可是找了好久,翻了好幾頁都沒看到想要的結(jié)果,心冷了,找到的都說ProgressDialog 可以自定義一個View,在layout定義一個布局,然后設(shè)置到ProgressDialog 中,這確實是一個解決辦法,可是對我來說頗顯麻煩,我只是要一個等待效果,改一下字體,費不著去寫一個layout,在重寫一個ProgressDialog 吧。

最后我想想,可以設(shè)置ProgressDialog  的layout 那么應(yīng)該也可以獲取他的View吧,果然Dialog 就有一個獲取View的方法:

復(fù)制代碼 代碼如下:

public abstract View getDecorView ()
Added in API level 1
Retrieve the top-level window decor view (containing the standard window frame/decorations and the client's content inside of that), which can be added as a window to the window manager.

Note that calling this function for the first time "locks in" various window characteristics as described in

只要有了View 我就可以找到其中的TextView,并設(shè)置相應(yīng)的字體大小,一下是我的實現(xiàn)代碼:

復(fù)制代碼 代碼如下:

    /**
     * 顯示 進度對話框
     * @param message 消息
     * @param cancel 是否可取消
     * @param textsize 字體大小
     */
    protected final void showProgressDialog(String message,boolean cancel,int textsize)
    {
        // TODO Auto-generated method stub
        mProgress = new ProgressDialog(this);
        mProgress.setMessage(message);
        mProgress.setCancelable(cancel);
        mProgress.setOnCancelListener(null);
        mProgress.show();

        setDialogFontSize(mProgress,textsize);
    }
    private void setDialogFontSize(Dialog dialog,int size)
    {
        Window window = dialog.getWindow();
        View view = window.getDecorView();
        setViewFontSize(view,size);
    }
    private void setViewFontSize(View view,int size)
    {
        if(view instanceof ViewGroup)
        {
            ViewGroup parent = (ViewGroup)view;
            int count = parent.getChildCount();
            for (int i = 0; i < count; i++)
            {
                setViewFontSize(parent.getChildAt(i),size);
            }
        }
        else if(view instanceof TextView){
            TextView textview = (TextView)view;
            textview.setTextSize(size);
        }
    }

最后看效果圖:

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 罗甸县| 平阴县| 兴义市| 大新县| 曲水县| 南安市| 蕉岭县| 湛江市| 株洲县| 东平县| 丰县| 河池市| 无棣县| 呼伦贝尔市| 景谷| 台前县| 前郭尔| 科技| 和林格尔县| 仁化县| 昌邑市| 教育| 松溪县| 新余市| 白山市| 天津市| 麻城市| 滦南县| 南充市| 资溪县| 潜江市| 海伦市| 平塘县| 什邡市| 保德县| 南开区| 江山市| 舞钢市| 正安县| 延庆县| 天长市|