【问题标题】:Android DeviceDefault Switch buttonAndroid DeviceDefault 切换按钮
【发布时间】:2019-03-23 08:13:43
【问题描述】:

我需要获取设备默认的 Switch (Api lvl 14) 按钮。我的应用程序中已经有 Switch 按钮,但我希​​望它们看起来像 DEVICE 默认的 Switch 按钮,而不是 Android 中的那些。我该怎么做?

我尝试更改应用程序的主题,但我已经有一个用于自定义标题栏的自定义主题,如果我尝试更改主题(例如 Theme.DeviceDefault),我会因为自定义而强制关闭标题。

这是开关的样子(对于我的设备):

【问题讨论】:

    标签: android switch-statement android-theme


    【解决方案1】:

    您是在寻找ToggleButton(Api lvl 1)还是Swith(Api lvl 14)?

    更新:好的,那么你可以使用ImageView,它也可以处理点击。在xml中:

     <ImageView
              android:layout_width="100dp"
              android:layout_height="100dp"
              android:background="@drawable/my_swich"
     />
    

    在可绘制文件夹中的 my_swith.xml 中:

    <selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true" android:drawable="@drawable/selectedImage" />
    <item  android:drawable="@drawable/normalImage" />
    </selector>
    

    最后,在代码中您需要将OnClickListener 设置为图像。当 onClick Image 上的事件时,您需要这样做:

    iv.setSelected(!iv.isSelected());
    

    你得到定制(你自己的工具) 希望我能正确理解您的问题。

    【讨论】:

    • @ziziana,好吧,检查一下(这个问题)[stackoverflow.com/questions/9920709/….
    • 感谢您的回答,但正如我在那个问题中看到的那样,他们只使用 Android 默认的切换按钮。我已经有了那些开关按钮。我想要以某种方式获得每个设备默认的切换按钮。我的情况是,如果我的设备有上图中的 Switch 按钮,我希望我的应用 Switches 看起来像这样。我希望你明白我的意思:D
    • 感谢您的回答,但我想要的是:使用一些代码使我的按钮、开关和其他 UI 元素看起来像所有者设备(在 LG 设备上看起来像我的图像,并且在三星设备上看起来像三星按钮等)。我希望这次更清楚......我不知道如何更好地解释它:(
    • 如果您想使用“本机”进行设备开关 - 答案是:使用Switch。但是你需要让Min Sdk Version = 14。如果你需要支持旧版本的Android(
    • 我使用了 Switch,并制作了 Min Sdk 版本 14 和 Target Sdk 17,但这些 Switch 看起来不像我设备上的那些。这是否意味着我的设备主题没有使用 Switch?这很奇怪......无论如何我会接受你的回答,因为你给了我很多信息。谢谢:)
    【解决方案2】:

    查看此页面:http://androiddrawableexplorer.appspot.com/ 以获取所有可用图标的列表。顶部有一个用法示例,但如果您在 menu.xml 文件中执行此操作,请使用一些看起来像这样的代码

    <item android:id="@+id/end"
        android:title="@string/end_label"
        android:alphabeticShortcut="@string/end_shortcut"
        android:icon = "@android:drawable/ic_menu_close_clear_cancel" />
    

    【讨论】:

      猜你喜欢
      • 2010-10-08
      • 2011-01-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多