我使用这个带有填充的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)的值更改为其他值。 我知道如何更改形状的其他属性,如颜色或无线电,但没有找到如何更改填充值......
答案 0 :(得分:0)
我认为你可以使用set padding方法:
Button myButton = (Button)findViewById(R.id.button);
myButton.setPadding(10,20,30,40);
同样适用于形状。
如果您只想更改4个填充值中的一个,则可以使用getPaddingLeft()
,getPaddingTop()
,getPaddingRight()
或getPaddingBottom()
来获取其他填充值。< / p>
有关setpadding方法的更多信息。