android程序代碼實現改變字體顏色和輸入密碼的顯示隱藏

這篇文章記錄一下開發時遇到的兩個小問題  
     1、很多時候都需要用在java代碼中去更改字體的顏色,密碼的顯示方式,以及使用java代碼創建一個控件、一個佈局,這次遇到的問題就是使用java代碼更改字體的顏色,第一次使用的是
[java]
//  tvAbcAccount.setTextColor(color.PressAccountTextColor); 
//  tvVBcdAccount.setTextColor(color.AccountTextColor); 
PressAccountTextColor和AccountTextColor是在colorlist.xml中定義的兩種顏色值
[java]
<color name="AccountTextColor">#b5b5b5</color> 
<color name="PressAccountTextColor">#e7e7e7</color> 

       目的是當有按鍵被按下的時候就對字體顏色進行相應的改變,但是上述代碼不能達到想要的結果,後來查找瞭一下資料,改為
[java]
tvAbcAccount.setTextColor(getResources().getColor(R.color.PressAccountTextColor)); 
tvBcdAccount.setTextColor(getResources().getColor(R.color.AccountTextColor)); 

這種方式達到瞭想要的結果。
2、一個密碼框,通過一個按鈕來控制密碼是明文還是暗文顯示的。可是發現使用et_pwd.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);不能將密碼暗文顯示,我的代碼如下:
[java]
showPassWordLayout.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
        if(CHECKED){ 
            CHECKED =false; 
            et_pwd.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);//不暗文顯示 
            }else{ 
            CHECKED =true; 
            et_pwd.setInputType(InputType.TYPE_CLASS_TEXT); 
            } 
    } 
}); 
 達不到想要的顯示隱藏密碼的效果 www.aiwalls.com
       在網上找瞭一下,最後發現輸入類型的設置需要改一下 ,實現代碼如下
[java]
showPassWordLayout.setOnClickListener(new OnClickListener() { 
    @Override 
    public void onClick(View v) { 
            if(CHECKED){ 
         CHECKED =false; 
             et_pwd.setInputType(InputType.TYPE_CLASS_TEXT|InputType.TYPE_TEXT_VARIATION_PASSWORD); 
        }else{ 
        CHECKED =true; 
        et_pwd.setInputType(InputType.TYPE_CLASS_TEXT); 
        } 
    } 
}); 
     

 

摘自 walker的專欄

發佈留言