1

我想做以下事情:

button.setBackgroundResource(R.layout.caracbout);

但是这个函数只能像这样工作:

button.setBackgroundResource(R.drawable.xxxx);

我的按钮是

<Button
            android:layout_width="0dp" 
            android:layout_height="match_parent" 
            android:layout_weight=".6"
            android:background="@layout/boutcarac"
            android:textColor="#000000"
            android:text="Refresh"
            android:clickable="true"
            android:onClick="refreshfiche"/>

我的布局 caracbout xml 就像

<item android:state_pressed="true" >
        <shape android:shape="rectangle"  >
            <corners android:radius="5dip"/>
            <stroke
                android:width="1dip"
                android:color="#000000" />
            <gradient
                android:angle="-90"
                android:startColor="#0000"
                android:endColor="#fff5d6"  />
        </shape>
    </item>

    <item style="@style/typocarac">
        <shape android:shape="rectangle"  >
            <corners android:radius="5dip"/>
            <stroke
                android:width="1dip"
                android:color="#fff5d6" />
            <gradient
                android:angle="-90"
                android:startColor="#fff5d6"
                android:endColor="#0000"  />
        </shape>
    </item>

我必须更改项目 android:state_pressed="true",所以我想创建一个 xml caracbout2 并将其设置在 java.lang. 但我不知道我该怎么做。谢谢!

4

3 回答 3

1

你可以像这样设置背景,

Button btn = (Button) findViewById(R.id.btn);
btn.setBackgroundResource(R.drawable.ic_launcher);
于 2015-11-10T11:21:34.730 回答
0

布局不是背景图像。它们包含绘制应用程序视图/屏幕所需的信息。要绘制具有自定义背景的按钮,您可以使用可绘制资源文件。

http://developer.android.com/guide/topics/resources/drawable-resource.html

于 2015-11-10T10:48:23.827 回答
0

在目录drawable中创建你的caracbout2 xml文件并在java中使用R.drawable.caracbout2

您可以从中学习绘制资源。

于 2015-11-11T08:04:51.353 回答