編輯:關於android開發
前言
在Layout中指定好background和padding以後,程序裡面動態修改background之後padding就失效了,貌似是一個BUG,這裡找到了一篇英文文章,簡單翻譯分享一下。
正文
一、折中辦法
1.1 方法一
int bottom = theView.getPaddingBottom();
int top = theView.getPaddingTop();
int right = theView.getPaddingRight();
int left = theView.getPaddingLeft();
theView.setBackgroundResource(R.drawable.entry_bg_with_image);
theView.setPadding(left, top, right, bottom);
1.2 方法二
int pad = resources.getDimensionPixelSize(R.dimen.linear_layout_padding);
theView.setBackgroundResource(R.drawable.entry_bg_with_image);
theView.setPadding(pad, pad, pad, pad);
代碼說明:
實際上就是在setBackgroundResource之後重新設置一下padding。
二、原帖網址
http://stackoverflow.com/questions/5890379/android-setbackgroundresource-discards-my-xml-layout-attributes
三、搜索關鍵字
GOOGLE:"android setbackgroundresource changes padding"
結束
搜索引擎基本能解決我99%的問題,中文關鍵字不行換英文關鍵字,或者直接搜索代碼,初學者應把搜索盡快當成自己最重要的學習工具,以後類似的文章我也盡量把搜索關鍵字給加上。
PostgreSQL空值null參與運算的處理方法 在數字加減乘除運算中遇到某個字段值為空值(null)的時候,輸出的結果往往會讓我們失望,得不到我們所期待的數值,可以通
Android 手機衛士--導航界面4的業務邏輯,android衛士本文實現導航界面4的業務邏輯,導航界面4的界面如下: 本文地址:http://www.cnblogs
android Unable toexecute dex: method ID not in [0, 0xffff]: 65536問題 作為一名Android開發者,相
安卓應用程序的簽名 簽名安卓應用程序 Android應用以它的包名作為唯一標識。如果在同一部手機上安裝兩個包名相同的應用,後面安裝的應用就會覆蓋前面安裝的應用。為了避免