Android SwitchCompat 实现类似IOS的UI效果

这篇具有很好参考价值的文章主要介绍了Android SwitchCompat 实现类似IOS的UI效果。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在Android中,可以通过自定义样式和选择器来实现类似iOS的开关效果。请按照以下步骤进行操作:

  1. 首先,创建一个选择器 xml 文件,例如 switch_selector.xml,用来设置 Switch 的样式,示例代码如下:

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item
            android:drawable="@drawable/switch_on"
            android:state_checked="true" />
        <item
            android:drawable="@drawable/switch_off"
            android:state_checked="false" />
    </selector>
    

    在这里,我们定义了两个 item,通过设置 state_checked 来设置 Switch 的状态,如果 Switch 的状态为选中,就使用 switch_on 的图片,否则使用 switch_off 的图片。

  2. 创建对应的开启和关闭的图片,例如 switch_on.png 和 switch_off.png。

  3. 在布局文件里使用 SwitchCompat 控件,并且设置样式如下:

    <androidx.appcompat.widget.SwitchCompat
        android:id="@+id/switch_compat"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:thumb="@drawable/switch_thumb_selector"
        android:track="@drawable/switch_selector" />
    

    在这里,我们使用了 switch_selector 作为 Switch 的样式,同时设置了用于拖动的圆形按钮的选择器 switch_thumb_selector

  4. 创建 switch_thumb_selector.xml 选择器文件,用于设置圆形按钮的样式,示例代码如下:

    <?xml version="1.0" encoding="utf-8"?>
    <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:drawable="@drawable/switch_thumb_on" android:state_checked="true" />
        <item android:drawable="@drawable/switch_thumb_off" android:state_checked="false" />
    </selector>
    

    在这里,我们定义了两个 item,设置选择器的状态,使其能够根据 SwitchCompat 的状态来切换圆形按钮的状态。

  5. 创建对应的开启和关闭的圆形按钮,例如 switch_thumb_on.png 和 switch_thumb_off.png。

通过以上步骤,即可实现类似iOS的开关效果。需要注意的是,在使用 SwitchCompat 控件时,请确保 theme 是 AppCompat 的主题,否则将无法正常运行。


以下是 Android SwitchCompat 实现类似iOS的U效果所需图片的下载地址:

  1. switch_on.png:https://i.stack.imgur.com/xc3bc.png
  2. switch_off.png:https://i.stack.imgur.com/0lLu3.png
  3. switch_thumb_on.png:https://i.stack.imgur.com/sGYxO.png
  4. switch_thumb_off.png:https://i.stack.imgur.com/WmPY4.png

这些图片下载地址都是来自 Stack Overflow 社区,用户可以使用这些图片来测试和实验 Android SwitchCompat 控件的开关效果。点击链接后,会自动下载相应的图片资源。


由于 Stack Overflow 社区的图片可能在一些地区访问不便,以下是 Android SwitchCompat 实现类似iOS的U效果所需图片的国内下载地址:

  1. switch_on.png:https://cdn.jsdelivr.net/gh/zhanglijian/ImgHosting/xc3bc.png
  2. switch_off.png:https://cdn.jsdelivr.net/gh/zhanglijian/ImgHosting/0lLu3.png
  3. switch_thumb_on.png:https://cdn.jsdelivr.net/gh/zhanglijian/ImgHosting/sGYxO.png
  4. switch_thumb_off.png:https://cdn.jsdelivr.net/gh/zhanglijian/ImgHosting/WmPY4.png

用户可以使用这些图片来测试和实验 Android SwitchCompat 控件的开关效果。点击链接后,会自动下载相应的图片资源。文章来源地址https://www.toymoban.com/news/detail-476367.html

到了这里,关于Android SwitchCompat 实现类似IOS的UI效果的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android UI - 实现广告Banner轮播效果,Android MVP模式详解

    android:layout_width=“wrap_content” android:layout_height=“wrap_content” android:layout_marginTop=“10dip” android:layout_gravity=“bottom|center_horizontal” android:layout_marginBottom=“10dp” android:gravity=“center” View android:id=“@+id/v_dot0” style=“@style/dot_style” android:background=“@drawable/dot_focused” android:vi

    2024年04月13日
    浏览(39)
  • Android 滑动按钮(开关) SwitchCompat 自定义风格

    原生的SwitchCompat控件如下图,不说不堪入目,也算是不敢恭维了。开个玩笑... 所以我们就需要对SwitchCompat进行自定义风格,效果如下图 代码如下 从上面的xml代码来看其实只需要定制两个东西一个是thumb,另一个是track switch_thumb switch_track_style switch_track_style里面有两个背景如下

    2024年02月03日
    浏览(22)
  • WPF实现类似ChatGPT的逐字打印效果

    前一段时间ChatGPT类的应用十分火爆,这类应用在回答用户的问题时逐字打印输出,像极了真人打字回复消息。出于对这个效果的兴趣,决定用WPF模拟这个效果。 真实的ChatGPT逐字输出效果涉及其语言生成模型原理以及服务端与前端通信机制,本文不做过多阐述,重点是如何用

    2024年02月13日
    浏览(29)
  • 微信小程序 - 实现容器卡片翻转动画效果,类似考勤打卡签到时翻转效果(像翻牌抽奖类似的效果动画)详细示例源码教程,一键复制开箱即用!

    微信小程序项目中,实现了任意容器像卡片一样的翻转效果动画,类似钉钉打卡签到点击时的翻转动画! 示例源码的注释非常详细,保证一键复制后改改样式就能应用到你的项目中去了。

    2024年02月10日
    浏览(39)
  • flutter开发实战-实现自定义按钮类似UIButton效果

    flutter开发实战-实现自定义按钮类似UIButton效果 最近开发过程中需要实现一下UIButton效果的flutter按钮,这里使用的是监听手势点击事件。 GestureDetector属性定义 由于属性太多,我们实现onTapDown、onTapUp、onTapCancel、onTap。 实现自定义按钮类似,我们实现onTapDown、onTapUp、onTapCance

    2024年02月14日
    浏览(34)
  • 如何玩mysql5.7实现分词查询,来实现类似ES的效果

    背景:在做海外主数据项目的时候,PM提出了一个需求,说是类似于搜索的功能。但是需要实现根据输入的字符串进行相似度的查询,并且计算出输入的字符串与查出的字符串的相似度是多少。 思考:第一次听到需求的时候感觉还挺简单的,以为不就是个迷糊查询吗?但仔细

    2024年02月01日
    浏览(29)
  • vue2+three.js实现类似VR、3D全景效果

    效果图: 俩图标是我自己加的前进后退按钮,也是百度了好久,再加上GPT的帮助,才给搞出来。因为需求急,都不看官方文档,百度到一个能跑的demo之后改吧改吧,就先用着了。 下面是代码: 这里 代码有很多用不到的地方和需要优化的地方,我是来不及改了,就先这样吧

    2024年02月15日
    浏览(37)
  • 【小程序】小程序如何实现滑动翻页(类似刷短视频的交互效果)

    在微信小程序中实现上下滑动翻页的效果其实非常简单,可以说一学就会。 这篇文章将非常详细地教大家如何实现这一交互: 首先我们在 Page 的 data 属性中添加两个变量: 其中 biases 是个数组,我们要实现的效果就是每次展示 biases 的一个元素,上划切换到上一个元素,下划

    2024年02月10日
    浏览(26)
  • 通过搜索引擎让大模型获取实时数据-实现类似 perplexity 的效果

    汇报一下这周末的工作,主要是开发了一门课程:通过搜索引擎让大模型获取实时数据,第一次开发一门课程,难免会有很多不熟悉和做的不好的地方。 已经训练好的大模型有气数据的局限性,比如 GPT-4,只有 2023年4月之前的数据。关于最新发生的一些事情,它无法回答。

    2024年04月23日
    浏览(57)
  • 【游戏开发实战】Unity实现类似GitHub地球射线的效果(LineRenderer | 贝塞尔曲线)

    一、前言 嗨,大家伙,我是新发。 好久不见,这是2022年第一篇博客,今天有同学私信我,问我在 Unity 中如何实现这种地球辐射线的效果, 这一看,我就想到了 GitHub 主页的地球射线, 那么,今天就来讲讲如何实现这个效果吧~ 本文最终效果如下: 本文工程源码见文章末尾

    2024年02月06日
    浏览(81)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包