TextView右上角显示小红点,小红点根据TextView的长度移动,小红点被TextView挤出去不显示的问题;

时间:2022-12-17 07:34:36

TextView右上角显示小红点,小红点根据TextView的长度移动,小红点被TextView挤出去不显示的问题;

大概就是图片这个样,这个功能很常见,本来我以为很简单,谁知道真的很简单;

遇到点小问题,记录一下,哈哈;

小红点的Drawable:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<solid android:color="@color/colorFF1E40" />
<size android:height="@dimen/dimen_6dp"
android:width="@dimen/dimen_6dp"
/>
</shape>

TextView加小红点的布局:

 <RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="13dp"
android:layout_marginLeft="@dimen/dimen_20dp"
android:layout_toLeftOf="@id/tvTime"
android:layout_alignParentLeft="true"
android:layout_marginRight="15dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="流量套餐预警"
android:textColor="#232323"
android:lines="1"
android:textSize="@dimen/font_17sp"
android:id="@+id/tvTitle"
/>
<View
android:id="@+id/vRead"
android:visibility="visible"
android:layout_width="@dimen/dimen_6dp"
android:layout_height="@dimen/dimen_6dp"
android:layout_toRightOf="@id/tvTitle"
android:background="@drawable/message_red_read_gidn"
/>
</RelativeLayout>

好了完成了,是很简单吧;设置layout_toRightOf让小红点在TextView右边就行了;但是:重点来了;TextView字数过长时并且只能单行显示,这时就会把小红点挤出去,此时小红点不显示,看上去就像没有了小红点一样;

修改一下:

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="13dp"
android:layout_marginLeft="@dimen/dimen_20dp"
android:layout_toLeftOf="@id/tvTime"
android:layout_alignParentLeft="true"
android:layout_marginRight="15dp">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="流量套餐预警"
android:textColor="#232323"
android:lines="1"
android:paddingRight="@dimen/dimen_6dp"
android:textSize="@dimen/font_17sp"
android:id="@+id/tvTitle"
/>
<View
android:id="@+id/vRead"
android:visibility="visible"
android:layout_width="@dimen/dimen_6dp"
android:layout_height="@dimen/dimen_6dp"
android:layout_alignRight="@id/tvTitle"
android:background="@drawable/message_red_read_gidn"
/>
</RelativeLayout>

layout_toRightOf会把小红点挤出去;就不用它了,使用layout_alignRight让小红点和TextView右对齐就行了,如果小红点覆盖在TextView上面不好看的话,我们再给TextView添加一个paddingRight属性,让小红点完美的露出来不压在TextView上面;

感觉这个方法适用任何的控件;

TextView右上角显示小红点,小红点根据TextView的长度移动,小红点被TextView挤出去不显示的问题;的更多相关文章

  1. C&num;:decimal的去0显示

    public static string DecimalToString(decimal d) { return d.ToString("#0.######"); } 后面的0会给 ...

  2. c&num;中decimal的去0显示

    在近来的开发中,遇到到了decimal中显示0的问题,搞了很久才搞好了,现在就简单介绍一下其中一小部分,其他的网上很上很多 public static string DecimalToString(d ...

  3. aabccd统计每个字符出现的次数,结果显示&lbrace; a&colon; 2&comma; b&colon; 1&comma; c&colon; 2&comma; d&colon; 1 &rcub;;去掉重复的字符,使结果显示abcd

    遍历字符串的方式和遍历数组的方式有点相似,或者说就是相同的.在学习数组的遍历方法之前,可以通过for循环去遍历数组,同样,字符串也可以:字符串跟数组都有一个length的属性.下面代码奉上,个人思路! ...

  4. C&num; VS 断点进不去,显示红色空心右下角黄色感叹号图标

    今天开发同事遇到了一个诡异的问题,使用 Visual Studio 调式 C# 代码时,断电位置一直显示红色空心右下角有黄色感叹号的图标(下图所示),断点调试死活进不去. 几个同事过去看了下,都隐约感 ...

  5. 在页面中添加两个 <select> 标签,用来显示年份和月份;同时添加两个 <ul> 标签,一个用来显示星期,另一个用来显示日期 在 JavaScript 脚本中动态添加年份和月份,获取当前日期的年份

    查看本章节 查看作业目录 需求说明: 使用 JavaScript 中的 Date 对象,在页面上显示一个万年历.选择不同的年份和月份,在页面中显示当前月的日历 实现思路: 在页面中添加两个 <s ...

  6. Ubuntu进不去,显示error&colon;unknown filesystem &lpar;最简单解决方案总结&rpar;

    error filesysterm:文件系统错误 grub rescue:是让你拯救grub,就是你的grub坏了,引导程序坏了 要安装盘?要重装?No…… 只要几行命令就ok了 是的,这是我昨天亲自 ...

  7. 用javascript写一个显示时间差 几分钟前 几小时前 几天前 几周前 大于一个月显示日期

    window.onload = function(){ var show_times = $(".times span"); for(var i=0;i<show_times ...

  8. 按平均成绩从高到低显示所有学生的&OpenCurlyDoubleQuote;数据库”、&OpenCurlyDoubleQuote;企业管理”、&OpenCurlyDoubleQuote;英语”三门的课程成绩,按如下形式显示: 学生ID&comma;&comma;数据库&comma;企业管理&comma;英语&comma;有效课程数&comma;有效平均分

    SELECT S# as 学生ID ,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#='004') AS 数据库 ,(SELECT score FROM S ...

  9. html 概念

    HTML 超文本标记语言,标准通用标记语言下的一个应用.http://baike.baidu.com/link?url=RYF4Pj7VUPifcXatU7OJLGRljIgkp4MjzkspARor ...

随机推荐

  1. 005&lowbar;重写 Standard Delete Button

    以后会用JS直接删除,但是在加载.js时候出现问题,会在以后进一步追踪完善: <apex:page standardController="Opportunity" > ...

  2. 学习mongo系列(十一)关系

    准备工作:首先在maxh数据库的address集合中先插入数据 > db.address.insert({child_address:"gansu"}) WriteResul ...

  3. htseq-count 的使用

    Given a file with aligned sequencing reads and a list of genomic features, a common task is to count ...

  4. sql中update,alter,modify,delete,drop的区别和使用(整理)(转)

    关于update和alter: 百度知道上关于update和alter有一个很形象的总结: 一个表有很多字段,一个字段里有很多数据. 一个家有很多房间,一个房间里有很多家具. update是用来将衣柜 ...

  5. D3js-堆栈图

    效果图: 源码: <%@ page language="java" import="java.util.*" pageEncoding="UTF ...

  6. node起步

    首先,在项目目录下创建一个叫 app.js 的文件,并写如以下代码: app.js const http = require('http'); const hostname = '127.0.0.1' ...

  7. Docker 从入门到实践(一)Docker 简介

    读前须知:本教程大部分都是[Docker 从入门到实践 ]一书的知识,有兴趣可以直接观看书籍.同时,借鉴书籍的知识,如有侵权,请告知我,我会删除处理.谢谢. 一.什么是 Docker? Docker ...

  8. 【洛谷P4878】布局

    题目大意:给定一个长度为 N 的递增序列,有 M 组差分约束关系,求满足这些约束关系时,第一个数和第 N 个数的差是多少. 题解:首先,能否满足约束关系需要判断一下负环,若满足约束关系,再从第一个点 ...

  9. 在组件放使用v-model和slot插槽的简单实用

    封装的组件(SelectDefault.vue文件): <template> <div class="select-default"> <label& ...

  10. &period;NET分布式缓存Redis从入门到实战

    一.课程介绍 今天阿笨给大家带来一堂NOSQL的课程,本期的主角是Redis.希望大家学完本次分享课程后对redis有一个基本的了解和认识,并且熟悉和掌握 Redis在.NET中的使用. 本次分享课程 ...