首页 > 其他分享 >Android 妙用TextView实现左边文字,右边图片

Android 妙用TextView实现左边文字,右边图片

时间:2023-09-20 22:08:42浏览次数:40  
标签:文字 妙用 效果 勾选 设置 Android TextView 图标

有时候,需要文字在左边,右边有个箭头,我个人之前会有两种做法:

使用线性布局来实现

或者使用约束布局,一个左对齐,一个右对齐

这几天突然想到是否可以使用TextView的设置图标的方式实现,研究发现确实可以实现我的需求,也是记录下

文字和图标左右显示

效果:

Android 妙用TextView实现左边文字,右边图片_内边距

代码:

<TextView
    android:id="@+id/tvRate"
    style="@style/textStyle18"
    android:padding="20dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:drawableTint="@color/white"
    android:drawableEnd="@mipmap/universal_right"
    android:text="Rate our app"/>
  • drawableTint 设置图标着色
  • drawableEnd 设置右边图标

如果想要文字和图标之间有间距,可以通过设置drawablePadding属性来实现

drawablePadding用来设置图标的内边距

当然,因为整个都是一个TextView,所以文字宽度就比较好固定,默认到达图标左边会自动换行

也可以设置限制一行,都可以

文字和图标上下显示

除了上面的左右显示,也可以上下显示,这里就给个上下显示的实现效果

效果:

Android 妙用TextView实现左边文字,右边图片_android_02

代码:

<TextView   
    android:gravity="center_horizontal"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:drawableTop="@mipmap/function_jiasu"
    android:text="Boost"
/>

这里因为默认文字不是水平居中的,所以通过gravity设置为水平居中,不然就是文本和图标靠左了

勾选效果

之前也是说过可以通过view的select状态和selector来实现勾选变换图标的效果

如果是简单的勾选效果,用textview也可以搞定,如下效果所示

Android 妙用TextView实现左边文字,右边图片_内边距_03

代码:

<TextView
    android:id="@+id/tvcheck"
    style="@style/textStyle18"
    android:padding="20dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:drawableEnd="@drawable/selector_node_select"
    android:text="Rate our app"/>

通过代码修改此TextView的isSelect属性即可更改图标效果

总结:上面说的这种方法其实存在一定局限性,比较适合简单的布局,不过可以避免布局层次过多,可以优化布局加载的时间

标签:文字,妙用,效果,勾选,设置,Android,TextView,图标
From: https://blog.51cto.com/u_16175630/7542638

相关文章

  • Android开发中Button背景颜色不能修改问题及解决方法
    在Android中,Button是一种按钮组件,用户能够在该组件上点击,并引发相应的事件处理函数。在进行Android开发的时候,都需要使用到按钮,但是对于初学者来说,刚开始的按钮都是默认的主题颜色,不管怎么修改都变不了颜色,在此记录一下踩过的坑。问题:使用AndroidStudio进行android开发时,不管是......
  • 简历被筛、面试被拒?Android求职者们如何给自己争取面试机会?
    前言相信各位小伙伴在求职过程中,都会遇到简历投递之后已读不回、面试邀请迟迟没有音讯以及初试被刷的情况。一般来说,大多数小伙伴就会直接选择放弃这家公司了,但是!先别急着换下一家投递呀!求职面试是彼此双向选择的一个过程,不要觉得有心理负担,也不要觉得不好意思,如果是真的很需要一个......
  • 最全详解Android设备UDID还是唯一ID?
    这篇文章主要介绍了Android设备UDID还是唯一ID?我觉得挺不错的,现在分享给大家,也给大家做个参考。我想为我的Android应用程序生成android设备唯一ID,以根据用户设备udid创建收藏夹.所有设备都有唯一的ID.importandroid.provider.Settings.Secure;privateStringandroid_id=Se......
  • 2022最新手机设备标识码(IMEI、MEID、UDID、UUID、ANDROID_ID、GAID、IDFA等)教程
    Android篇 1IMEI和MEID(1)IMEI(InternationalMobileEquipmentIdentity)是国际移动设备身份码的缩写,国际移动装备辨识码,只有Android手机才获取的到,是由15位数字组成的"电子串号",比如像这样359881030314356,它与每台移动电话机一一对应,而且该码是全世界唯一的。它是GSM设备返......
  • 2022Android设备唯一标识(AndroidID,OAID等 )
    一、ID体系:你只是一串代码想要了解OAID,我们首先需要明白ID体系:想要追踪一个用户就必须先找到用户,在这个过程中,标识符(ID)就像我们的另一张身份证,它们就代表了数字化之后的你和我。不同App可能通过某些唯一标识符对你进行强制跟踪,广告平台则会通过这个唯一标识符对你进行用户画......
  • 没有Android开发的工作经验,该如何求职?
    前言找工作是每一个新毕业生都要面临的难题,尤其是在如今竞争激烈的社会环境下。无工作经验的应届生想要获得心仪Offer无疑更加困难。但是,没有经验并不代表没有机会。推推教你做好以下几点准备,依然可以在求职中脱颖而出!第一,要明确自己的专业方向和职业规划。根据自己的专业知识、技......
  • 金九银十就业季,Android工程师如何在面试中提升印象分?
    又到了金九银十的就业季,在面试过程中提升印象分是非常重要的。想要在面试中脱颖而出吗?下面是几个建议,小编希望大家可以借鉴一下。一、提前做足准备在参加面试之前,你应该做足准备。这包括了解公司的背景、业务模式、文化和价值观,以及与招聘的职位相关的技能和职责。刷刷该公司历年的......
  • Android 10 设置kernel log level
    有时候kernellog内容过多/过少影响我们分析问题,因此需要对kernellog进行设置。查看平台默认kernelloglevel$cat/proc/sys/kernel/printk6617kernlelog级别为6617关闭所有kernellog$echo"0617">proc/sys/kernel/printk //往printk文件写入“......
  • Android Launcher apk 授信安装
    对安装的apk进行校验,除了系统应用市场中下载的,其它渠道的apk都进行安装拦截,并且弹框提示。首先需要把验证的证书保存在数据库本地,后面需要用到然后注册系统广播,用于接收apk安装时的监听,这个广播由系统发出新装时的action‘android.intent.action.PACKAGE_ADDED替换时的actionan......
  • Linux: Android系统
    Android系统架构Android是谷歌开发的一款基于Linux内核的操作系统。系统架构分为五层,从下到上依次是Linux内核层、硬件抽象层、系统运行库层、应用框架层和应用层。通俗点从下往上依次是:Linuxkernel层,很大一部分内容是驱动程序HAL层,对下封装驱动硬件操作,对上向App提......