我有一對夫婦圖像按鈕在我的佈局一個已經繪製的是,當看到一個被點擊的時候,它的圖像資源設置爲不可見圖像按鈕,看不見的,將其設置爲可見這樣增加的背景與資源
btn1.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
btnmt2.setImageResource(R.drawable.happy);
btnmt2.setVisibility(View.VISIBLE);
btnmt2.setScaleType(ImageView.ScaleType.FIT_CENTER);
btnmt2.setPadding(5,5,5,5);
但可見圖像按鈕有一個背景(背景是一個陰影在xml中定義爲幾個形狀)我想圖像保持這個背景,當它被移動到不可見的一個,所以我試圖在xml中添加這個無濟於事,圖像資源似乎失去了縮放,或其填充,延伸到背景的全部大小,所以我嘗試將它添加到我的java文件中,這些工作圍繞着已棄用的方法,像這樣
if (android.os.Build.VERSION.SDK_INT < 16) {
btnmt2.setBackgroundResource(R.drawable.dropshadow);
} else {
btnmt2.setBackground(getResources().getDrawable(R.drawable.dropshadow));
}
這保持規模和填充但背景心不是添加的,任何人可以幫助我,不知道它的我的XML圖像,這是
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item >
<shape
android:shape="rectangle">
<solid android:color="@android:color/transparent" />
<corners android:radius="5dp"/>
</shape>
</item>
<item android:right="18dp" android:left="18dp" android:top="10dp" android:bottom="4dp">
<shape
android:shape="rectangle">
<solid android:color="@android:color/darker_gray"/>
<corners android:radius="10dp"/>
</shape>
</item>
</layer-list>
0123對不起,我的初學者實現了你的代碼,並坐在那裏告訴我方法setBackgroundResourceAndKeepPadding從來沒有使用過,我有麻煩聲明它在哪裏需要聲明它的方法來將它應用到視圖?謝謝 – martinseal1987 2014-09-22 21:35:52
他們是靜態方法,可隨時隨地從應用程序中使用。假設它們是名爲ViewHelper的類的一部分,那麼您可以像訪問其中的一個:ViewHelper.setBackgroundResourceAndKeepPadding(v,R.drawable.icon); – Guardanis 2014-09-23 14:15:12