Android按钮具有图像背景和文本以及有状态功能

时间:2012-02-29 12:46:27

标签: android xml android-layout background-image

我想在XML布局中创建“按钮”(如果可能),该按钮具有基于状态的背景图像(此图像未经9针修补)和文本。使用哪个组件?

我的button_states.xml看起来像是:

<?xml version="1.0" encoding="UTF-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_pressed="true" android:drawable="@drawable/my_pressed" />
    <item android:drawable="@drawable/my_normal" />
</selector>

my_pressedmy_normal 9补丁图片。

现在,如果我使用常规按钮

<Button
    android:id="@+id/my_button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:background="@drawable/button_states"
    android:text="@string/my_text" />

按钮在没有背景图像的情况下渲染。

如何使用文字和有状态“静态”背景做“按钮”?

THX

此致

1 个答案:

答案 0 :(得分:0)

实现此目的的最简单方法是在代码中执行此操作。在(常规)按钮上使用setBackgroundDrawable()设置所需的背景。如果你使用你的选择器作为提供的drawable你应该没问题。

[编辑] 要使用资源执行此操作,请将button_state.xml放在res \ drawable文件夹中,使用以下代码:

Button button = (Button) findViewById(R.id.my_button);
button.setBackgroundResource(R.drawable.button_state);