2

我试图在一侧绘制边框仅作为ImageButton对象,
例如在 CSS:border-left: 2px solid black;中。

有没有办法只用样式来做到这一点?(没有在它们之间插入空白视图)

谢谢!

编辑:
我将<selector>标签与ImageButton.

4

2 回答 2

3

经过大量搜索,我找到了这样做的方法。

创建包含边框样式的 xml 文件 (border_style.xml):

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle">
            <!-- The border color -->
            <solid android:color="#000" />
        </shape>
    </item>

    <item android:left="1dp">
        <shape xmlns:android="http://schemas.android.com/apk/res/android"android:shape="rectangle">
            <!-- The fill color-->
        </shape>
    </item>
</layer-list> 

然后在选择器中,你这样写:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true"> 
         <!-- Press Event -->
    </item> 

    <item android:state_focused="true"> 
              <!-- Focuse Event -->
    </item> 

    <item android:drawable="@drawable/border_style.xml" />         
</selector> 
于 2012-10-20T20:22:42.600 回答
0

你不能像css那样做。您需要创建一个 xml 并将 xml 放在 android drable 文件夹中并发送图像按钮背景

And rectangle drawable back.xml (put into res/drawable folder):

<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" >
   <solid android:color="#ffffff" />
   <stroke android:width="1dip" android:color="#4fa5d5"/>
</shape>
于 2012-10-20T14:18:00.050 回答