1

我使用这个带有填充的 xml 资源

<item android:id="@+id/first_image">
    <shape
        android:layout_width="wrap_content"
        android:left = "1dp"
        android:right = "50dp"
        android:shape="rectangle" >
        <stroke
            android:width="10dp"
            android:color="@color/orange_dd" />

        <solid android:color="#00000000" />
        <padding
            android:bottom="1dp"
            android:left="1dp"
            android:right="99dp"
            android:top="1dp" />           
    </shape>
</item>
<item android:id="@+id/second_image">
    <shape 
        android:shape="rectangle" 
        android:left = "200dp"
        android:right = "440dp"
        >
        <gradient
            android:angle="0"
            android:centerColor="@color/turquesa_l"
            android:endColor="@color/turquesa_l"
            android:startColor="@color/turquesa_ddd" />
    </shape>
</item>

我想以编程方式将右填充的值(值 99)更改为不同的值。我知道如何更改形状的其他属性,例如颜色或单选,但没有找到如何更改填充值...

4

1 回答 1

0

我认为您可以使用 set padding 方法:

    Button myButton = (Button)findViewById(R.id.button);
    myButton.setPadding(10,20,30,40);

形状也应如此。如果您只想更改 4 个填充值之一,则可以使用 、 或 获取另一个填充getPaddingLeft()值。getPaddingTop()getPaddingRight()getPaddingBottom()

有关setpadding方法的更多信息。

于 2015-03-09T15:44:08.727 回答