【问题标题】:ToggleButton with custom background and icon具有自定义背景和图标的切换按钮
【发布时间】:2017-03-06 11:03:52
【问题描述】:

我为ToggleButtons 创建了一个drawable,但我还需要显示一个图标。 如果只有背景属性,我该怎么做?

这是ToggleButton 可绘制对象:

<?xml version="1.0" encoding="utf-8"?>
<shape android:shape="rectangle"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <corners android:radius="8dp" />
    <stroke android:color="#CED2D4" android:width="1dp" />
    <solid android:color="#EDEEEF"/>

</shape>

以及放置ToggleButton 的代码(当前使用IconFont,但我必须更改,因为项目是动态的):

<ToggleButton
                android:id="@+id/toggleCreditCard"
                android:layout_width="@dimen/width_filter_facilities_button"
                android:layout_height="@dimen/height_filter_facilities_button"
                android:background="@drawable/filter_service_toggle_default"
                android:textOff="@string/fa_credit_card"
                android:textOn="@string/fa_credit_card" />

【问题讨论】:

    标签: android


    【解决方案1】:

    这可能会对您有所帮助。您可以创建一个图层列表并添加两个项目。第一项是您的自定义可绘制对象,第二项是您的图标。

    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:drawable="@drawable/list_bg_top"></item>
    <item android:left="10dp">
        <bitmap android:src="@drawable/waiting_status_btn"
          android:gravity="center_vertical|left" />
    </item>
    

    查看:customize toggle button on Android

    【讨论】:

    • 这样我会有两个问题。我将无法动态创建按钮,并且每个按钮都需要一个可绘制对象。
    • 如果你的按钮不同,你必须为每个按钮创建drawable。这是显而易见的。另一种方式,您可以设计可绘制包括自定义背景和图标,然后将其用作切换按钮的背景。这样一来,你就得了解设计软件如AI、PTS
    猜你喜欢
    • 2017-02-06
    • 1970-01-01
    • 2020-05-19
    • 2022-01-23
    • 2015-11-28
    • 2012-01-16
    • 1970-01-01
    • 2018-08-05
    • 2015-12-07
    相关资源
    最近更新 更多