前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >android中UseCompoundDrawables警告

android中UseCompoundDrawables警告

作者头像
阿超
发布2024-08-23 16:57:11
260
发布2024-08-23 16:57:11
举报
文章被收录于专栏:快乐阿超

促使一个人值得信任的唯一方式就是信任他。——史汀生

Android开发中,如果你看到 UseCompoundDrawables 这类的提示或警告,它通常来自于Android Lint工具,这是一种代码质量检测工具,用于指出可以优化的代码实践。UseCompoundDrawables 警告提示你可以使用 TextViewcompound drawables 功能,而不是在布局中单独使用一个 ImageViewTextView

TextView 提供了一种方式来直接在文本周围放置图标(上、下、左、右),这可以通过在TextView中使用 android:drawableLeftandroid:drawableRightandroid:drawableTopandroid:drawableBottom 属性来实现。使用这种方式比起分别放置 ImageViewTextView 更有效率,因为它减少了布局层次结构的复杂性,并且可以提升渲染性能。

假设你有一个 TextView 和一个图标显示性别,而你当前是这样布置的:

代码语言:javascript
复制
<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="@dimen/dp_4"
    android:gravity="center_vertical"
    android:orientation="horizontal">

    <TextView
        android:id="@+id/name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ellipsize="end"
        android:lines="1"
        android:maxWidth="@dimen/dp_200"
        android:text="foo"
        android:textColor="@color/ff333333"
        android:textSize="15sp"
        android:textStyle="bold" />

    <ImageView
        android:id="@+id/gender"
        android:layout_width="@dimen/dp_17"
        android:layout_height="@dimen/dp_17"
        android:layout_marginStart="@dimen/dp_5"
        android:src="@mipmap/gender_boy" />

</LinearLayout>

可以优化为:

代码语言:javascript
复制
<TextView
    android:id="@+id/name"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="@dimen/dp_4"
    android:ellipsize="end"
    android:lines="1"
    android:maxWidth="@dimen/dp_200"
    android:drawableRight="@mipmap/gender_boy"
    android:drawablePadding="@dimen/dp_5"
    android:text="foo"
    android:textColor="@color/ff333333"
    android:textSize="15sp"
    android:textStyle="bold"
    android:gravity="center_vertical" />

在这个优化后的例子中,你使用了 android:drawableRight 来放置图标,并用 android:drawablePadding 来设置图标与文本之间的间距。这样做简化了布局并可能提高了性能。

总结

如果你的项目中出现 UseCompoundDrawables 警告,考虑调整你的布局以使用 TextViewcompound drawables 功能,这通常是一个更优的布局实践。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-05-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 总结
相关产品与服务
检测工具
域名服务检测工具(Detection Tools)提供了全面的智能化域名诊断,包括Whois、DNS生效等特性检测,同时提供SSL证书相关特性检测,保障您的域名和网站健康。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档