以编程方式删除按钮的左侧图像,但不是右侧?

时间:2016-09-12 10:41:22

标签: android android-layout android-studio android-fragments

你好我有两个左右可画图像的按钮,我想只删除左侧图像,并想保留右侧图像我的按钮xml代码在下面。

 <Button
    android:id="@+id/fragment_add_to_cart_btn_proceed_to_checkout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/colorRed"
    android:drawableEnd="@drawable/ic_action_next"
    android:drawablePadding="5dp"
    android:drawableStart="@drawable/ic_rounded_cart"
    android:gravity="left|center_vertical"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:text="@string/proceed_to_checkout"
    android:textColor="@color/colorWhite" />

我已经应用了一些代码,但它不起作用

button.setCompoundDrawables(null, null, null, null);

如果您有任何解决方案,请回复? 谢谢。

5 个答案:

答案 0 :(得分:1)

尝试

button.setCompoundDrawablesWithIntrinsicBounds(0, 0, <your_left_drawable>, 0);

希望它会帮助你。

答案 1 :(得分:1)

您应该使用button.setCompoundDrawables(null, null, R.drawable.ic_action_next, null);

答案 2 :(得分:1)

尝试:

button.setCompoundDrawablesWithIntrinsicBounds(0, 0, <The right drawable>, 0);

订单:

setCompoundDrawablesWithIntrinsicBounds (int left, int top, int right, int bottom)

答案 3 :(得分:1)

button.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_rounded_cart, 0); // if you want to remove the left drawable

答案 4 :(得分:1)

  

onCreate内这样做。提供您需要显示的image资源,其他人将获得0

int imgResource = R.drawable.common_google_signin_btn_icon_dark;
fragment_add_to_cart_btn_proceed_to_checkout = (Button) findViewById(R.id.fragment_add_to_cart_btn_proceed_to_checkout);
fragment_add_to_cart_btn_proceed_to_checkout.setCompoundDrawablesWithIntrinsicBounds(0, 0, imgResource, 0);