欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android:EditText在hint字体大小和text字体大小不一致时的设置方法

程序员文章站 2023-02-26 12:26:30
今天碰到一个需求,有一个输入框edittext,要求输入某项金额,要求在未输入文字之前,hint提示,输入文字之后显示输入的文字,要求是未输入内容时hint字体大小为14sp,输入...

今天碰到一个需求,有一个输入框edittext,要求输入某项金额,要求在未输入文字之前,hint提示,输入文字之后显示输入的文字,要求是未输入内容时hint字体大小为14sp,输入金额之后字体大小要变成30sp。,可是edittext本身没有这个属性可以设置,怎么办呢,只有在代码中添加监听事件了:

/**
         * 添加监听,在hint时和text时切换字体大小
         */
        cetmoney.addtextchangedlistener(new textwatcher() {
            boolean hint;
            @override
            public void beforetextchanged(charsequence s, int start, int count, int after) {}
            @override
            public void ontextchanged(charsequence s, int start, int before, int count) {
                if(s.length() == 0) {
                    // no text, hint is visible
                    hint = true;
                    cetmoney.settextsize(typedvalue.complex_unit_sp, 14);
                } else {
                    // no hint, text is visible
                    hint = false;
                 cetmoney.settextsize(typedvalue.complex_unit_sp, 30);

                }
            }

            @override
            public void aftertextchanged(editable s) {
            }
        });

大功告成!!