android 動態java程式碼設定背景以及字型等顏色
動態設定顏色
今天碰到個奇怪的事情,在設定動態設定TextView以及Button背景顏色的時候在java程式碼中設定編譯執行時候竟然出現的顏色和我color檔案中設定的顏色不一樣,而我在xml中設定的顏色完全正確。不多說上程式碼:
之前設定顏色程式碼:
Button bt=new Button(); TextView tv= new TextView();
tv.setTextColor(*);
bt.setTextColor(*);
這樣做了之後執行發現顏色完全不是我設定的顏色,弄了半天沒找出原因。後來直接用程式碼先獲取顏色值在設定。
修改之後的程式碼: int white = getResources().getColor(R.color.white);
tv.setTextColor(white ); 或者說這樣寫:
tv.setTextColor(Color.parseColor(“”));
而Button 的背景顏色在設定的時候改為圖片,
因為之前的
bt.setBackgroundDrawable();
bt.setBackground(getResources().getDrawable(R.drawable.ic_updown));
getResources().getDrawable();
方法都已經過期了我們也不建議使用。
直接使用:
bt.setBackgroundResource(R.drawable.ic_launcher);方法即可程式碼量都減少了幾個,這樣方便了許多直接呼叫drawable下面的檔案即可。