【问题标题】:How to draw an imageButton with a with this background如何用这个背景绘制一个imageButton
【发布时间】:2021-04-16 02:24:58
【问题描述】:

我正在尝试在 xml 中绘制这个形状,我希望只在 ImageButton 上进行绘制,这就是我所拥有的

<ImageButton
     android:layout_width="48dp"
     android:layout_height="48dp"
     android:layout_alignParentTop="true"
     android:layout_marginStart="59dp"
     android:layout_marginTop="12dp"
     android:layout_marginEnd="30dp"
     android:alpha="0.14"
     android:layout_marginBottom="12dp"
     android:background="@drawable/round_background"
     android:src="@drawable/ic_location"

【问题讨论】:

  • “不覆盖布局”是什么意思?
  • 它说覆盖,因为 min api 不支持它
  • 您是说android:foreground="" 吗?
  • 是的,我不想使用,我想使用 src 和背景也许。

标签: android xml kotlin


【解决方案1】:

要在 API 23 及更低版本上使用 android:foreground 属性,您可以创建如下样式:

 <style name="MyImageButton" parent="Widget.AppCompat.ImageButton">
        <item name="android:foreground">@drawable/round_background</item>
    </style>

您只需要在 ImageButton 中应用此样式:

 <ImageButton
     style="@style/MyImageButton"
     android:layout_width="48dp"
     android:layout_height="48dp"
     android:layout_alignParentTop="true"
     android:layout_marginStart="59dp"
     android:layout_marginTop="12dp"
     android:layout_marginEnd="30dp"
     android:alpha="0.14"
     android:layout_marginBottom="12dp"/>

【讨论】:

  • 图标怎么样,@drawable/ic_location
  • 或者更确切地说,实现该图像的最佳方法是什么?
  • 你可以使用layer-list将它添加到你的round_background中
  • 我也有类似的答案here请查收
  • @Maria 如果我在你的位置,最好的方法是使用 MaterailButton 来查看answer
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多