0

我想将图像应用到按钮的背景。

我为它写了如下风格:

 <style name="SingnupButton" parent="@android:style/TextAppearance.Medium">
    <item android:drawable="@drawable/signupButton.jpeg" /> 
    </style>

图像在我的drawable-hdpi文件夹中。

我将其应用如下:

<Button
            style="@style/SingnupButton"
            android:id="@+id/btn_register"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:text="@string/btn_register" />

但是这个图像没有被应用到按钮的背景上。

我的代码有什么问题?

请指导我。

4

5 回答 5

1

尝试为按钮设置背景并将选择器放入可绘制文件夹。调用时不要使用(android:drawable="@drawable/button_bg_shape.jpg) 任何扩展名,如 jpeg、png、gif、...。尝试在 drawable 文件夹中使用 png 文件

XML 文件:

       <Button
            android:id="@+id/Bundle_clear"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/selector_button"
            android:text="Clear"
            android:textColor="#FFF"
            android:textSize="@dimen/text_size"
            android:textStyle="bold" />

在可绘制文件夹中创建 selector_button

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/button_bg_shape" android:state_pressed="true"/>
    <item android:drawable="@drawable/bt"/>

     </selector>
于 2013-09-04T07:02:29.693 回答
1

你错误地设置了背景style

试试这个方法。。

<style name="SingnupButton" parent="@android:style/TextAppearance.Medium">
    <item name="android:background">@drawable/signupButton</item>
</style>
于 2013-09-04T07:07:48.517 回答
1

改变它

<item android:drawable="@drawable/signupButton.jpeg" /> 

<item android:background="@drawable/signupButton" /> 

只需重命名该图像名称并删除 .jpeg 扩展名

于 2013-09-04T06:58:07.313 回答
1

尝试这个:

<style name="SingnupButton" parent="@android:style/TextAppearance.Medium">
    <item android:drawable="@drawable/signupButton" /> 
</style>
于 2013-09-04T06:58:15.050 回答
1

删除.jpg

 <item android:drawable="@drawable/signupButton.jpeg" /> 
于 2013-09-04T06:58:18.400 回答