【问题标题】:Android Studio: Have text and image inside a buttonAndroid Studio:在按钮内有文本和图像
【发布时间】:2015-12-16 19:16:21
【问题描述】:

在我正在设计的按钮中,我需要创建一个按钮,通知用户他们将移动应用程序离开应用程序的网页。

我想在按钮中有一个表示导出和文本的图像。

我在 xcode 中完成了这个。是否可以在 Android Studio 中执行此操作?

【问题讨论】:

    标签: image button android-studio


    【解决方案1】:

    Button 类扩展了 TextView 类,该类具有称为 Compound Drawables 的功能。这是一个可以放置在文本两侧的可绘制对象:在右侧/左侧/顶部/底部。示例:

    <Button
        android:text="@string/example"
        android:drawableLeft="@drawable/btn_example"
        android:drawablePadding="5dp" />
    

    我想这就是你要找的。​​p>

    编辑:当您别无选择时,必须考虑 Jim 的 solution。谷歌反对这种方法,更多信息可以找到here。简而言之:您拥有的布局/视图越多,实现的性能就越慢。 Android Studio 甚至会在 xml 编辑器中向您显示警告,说您应该尽可能使用复合可绘制对象,并且仅在不得已的情况下使用 ImageView+TextView bundle。

    【讨论】:

      【解决方案2】:

      在 Android 中,您可以让任何 Layout 捕获 onClick 事件。因此,您可以使用LinearLayoutRelativeLayout 并在其中放入TextViewImageView。使用适当的格式、图像等,此布局将显示为一个按钮。

      此外,如果您希望“按钮”在“按下”“聚焦”等时发生变化,您将需要查看 selector

      【讨论】:

      • 我打算同时保留按钮中的文本和图像。
      • 这样做 - CompoundDrawables 建议也是一个不错的建议,但它有一些限制,您可能会发现不适用于您的用例。出于这个原因,我通常会避免它。
      猜你喜欢
      • 2012-09-03
      • 2011-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-03
      • 1970-01-01
      • 2013-09-29
      相关资源
      最近更新 更多