Android Space引起TextView走马灯marquee的一个显示bug

串口调试神器诞生记:我是如何用Cursor+AI自动生成C#上位机的(含VSCode插件清单) 本文详细介绍了如何利用Cursor和AI技术快速开发C#上位机程序,实现高效的串口通讯调试。从开发环境搭建到代码自动生成,再到性能优化和功能增强,全面展示了AI辅助开发在串口调试中的实际应用和显著效率提升。 阅读详情

在Android TV开发的时候,需要用到一个TextView的走马灯效果,发现一个很诡异的UI问题。先看看item的layout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="@dimen/square_image_card_width"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@color/about_background"
    android:id="@+id/ll_dlna_item">

    <android.support.v4.widget.Space
        android:id="@+id/space_dlna"
        android:layout_width="wrap_content"
        android:layout_height="@dimen/music_album_songs_padding" />

    <ImageView
        android:id="@+id/iv_cover"
        android:layout_width="@dimen/square_image_card_width"
        android:layout_height="@dimen/square_image_card_width"
        android:layout_gravity="center_horizontal"/>

    <TextView
        android:id="@+id/tv_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:ellipsize="marquee"
        android:marqueeRepeatLimit="marquee_forever"
        android:layout_margin="@dimen/music_album_songs_padding" />

</LinearLayout>

一切似乎没有问题,然而实际跑起来的时候,部分item会出现以下诡异的两根线:
在这里插入图片描述
如箭头所示,这两根线不知从何而来,改变background和foreground都无济于事,后来发现,是Space搞的鬼,无论是v4的Space,还是Space,都有这个问题,后来尝试把Space换成View,还是不行,最终换成TextView,并且把height换成margin才搞定。最终的layout:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="@dimen/square_image_card_width"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@color/about_background"
    android:id="@+id/ll_dlna_item">

    <View
        android:id="@+id/space_dlna"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="@dimen/music_album_songs_padding"/>

    <ImageView
        android:id="@+id/iv_cover"
        android:layout_width="@dimen/square_image_card_width"
        android:layout_height="@dimen/square_image_card_width"
        android:layout_gravity="center_horizontal"/>

    <TextView
        android:id="@+id/tv_title"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:ellipsize="marquee"
        android:marqueeRepeatLimit="marquee_forever"
        android:layout_margin="@dimen/music_album_songs_padding" />
</LinearLayout>
uni-app - 最详细 H5 网页接入微信登录功能,提供公众号配置与详细注释示例代码(移动端网页实现点击登录按钮后 调用微信公众号授权登录功能 详细讲解接入流程与详细示例代码)官方最新超级详细教程 uniapp中H5微信登录,uniapp H5微信授权登录,微信公众号第三方网页(H5)授权登录(OAuth2.0)流程及逻辑详细教程,UNIAPP 开发H5 怎么实现微信公众号登录功能,uniapp如何实现H5网页的公众号微信登录,怎么做uniapp微信登录,uniapp h5项目怎么实现微信登录的功能,uniapp微信浏览器H5授权微信登录,UniApp开发H5接入微信登录的全过程,uniapp的H5页面使用微信登录,uniapp H5微信授权登录,H5之微信授权登陆 (uniapp网页版微信授权登录) 阅读详情

相关推荐

GB 44497-2024《智能网联汽车 自动驾驶数据记录系统》标准解读

GB 44497-2024《智能网联汽车 自动驾驶数据记录系统》针对智能网联汽车的自动驾驶数据记录系统进行了全面规范。标准要求我们记录车辆在自动驾驶模式下的所有关键操作数据,如:1. 车辆状态数据,如速度、加速度、转向角度、制动状态等;2. 环境感知数据,如周围物体的位置、速度、类型等;3. 驾驶决策数据,如路径规划、避障决策、紧急制动指令等;4. 系统状态数据,如软件版本、硬件状态、系统警告信息等。在数据存储方面,标准强调了数据的安全性和可靠性。

daopuyun的博客 2670

使用android TextView原生跑马灯出现的异常及解决方法

<TextView android:padding="10dp" android:layout_centerInParent="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleLine="true" android:ellipsize="marquee" android:focusable="true" .

光年的博客 1768

强化学习-----DQN(Deep Q-network)

DQN(Deep Q-Network)是一种基于深度学习和强化学习的算法,由DeepMind提出,用于解决离散动作空间下的马尔科夫决策过程(MDP)问题。它是首个成功将深度学习应用于解决强化学习任务的算法之一。DQN,即深度Q网络(Deep Q-network),是指基于深度学习的Q-Learing算法。那什么是Q-leaning?可以看上一篇文章Q-learning是一种经典的强化学习算法,用于解决马尔可夫决策过程(Markov Decision Process,MDP)中的控制问题。

qq_74722169的博客 2万+

TextView跑马灯效果显示不全

TextView跑马灯效果还没走完,突然又从头开始,且有跳动感,原因是你又重新赋值了TextView,跑马灯又会从头开始循环,解决办法,就是做判断,不要重新赋值

zpbshine的博客 781

OpenWebUI外部模型配置异常排查与修复指南

本文详细解析了OpenWebUI外部模型配置异常的常见问题及解决方案,包括隐藏字符、数据库锁死等典型现象。通过错误日志分析和数据库修复实战指南,帮助开发者快速定位并解决配置问题,确保OpenWebUI与第三方大模型的稳定连接。

weixin_29205061的博客 311

UCD9081EVM电源时序管理:硬件配置与GUI操作全解析

电源时序管理是复杂电子系统设计的核心环节,它通过精确控制多路电源的上电/下电顺序,确保核心芯片免受浪涌电流或电压倒灌的损害。其原理基于状态机逻辑与电压监控,技术价值在于将硬连线时序转化为可编程配置,极大提升了系统可靠性与设计灵活性。在服务器、通信设备、工控系统等高可靠性应用场景中,时序控制器是实现稳定启动与故障保护的关键。本文以德州仪器UCD9081评估模块为例,深入剖析其硬件跳线配置与图形用户界面操作,涵盖I2C地址设置、电压监控分压计算、时序条件与故障响应策略等工程实践要点,帮助工程师快速掌握这一电源时

weixin_42696271的博客 303

TextView跑马灯效果(解决显示不全我问题)

1、在xml的Text控件内添加如下代码 android:singleLine="true" android:ellipsize="marquee" android:marqueeRepeatLimit="marquee_forever" 2、在Activity或者Fragment或者Adapter内添加如下代码: tvDeviceName.setSelected(true); ...

zhouxing的博客 1011

大模型之Spring AI实战系列(二十一):Spring AI + MCP + 本地文件系统实战指南

在上一篇文章中,我们学习了如何使用 Spring AI 集成 Model Context Protocol (MCP),并通过 Brave Search 实现了互联网搜索能力的接入。本文将继续深入 Spring AI 的 MCP 实战能力,介绍如何将 **本地文件系统** 封装为 LLM 可调用的工具

寻道AI,探索AI无限可能! 2519

Android TextView的marquee跑马灯无效的坑

首先获得相应的焦点。网上很多前辈说过了,在布局文件中设置相应的焦点 android:focusableInTouchMode="true" android:focusable="true"亦或者从写TextView相应控件的方法。 @Override public boolean isFocused() { return true;

MonKing__的博客 8110

从0到1用OpenClaw打造酒店收益管理系统:数据整合→AI策略迭代全链路落地实战

本文基于三亚某连锁海景酒店真实项目落地经验编写,系统上线3个月,酒店平均入住率从62%提升至80%,RevPAR(平均可售房收入)提升26%,淡季空置率降低46%,完全覆盖中小酒店全场景收益管理需求。本文配套OpenClaw全量Skill代码、工作流配置文件,可直接复用落地。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 492

RK3588 , 基于mpp 解码 Jpeg To RGB

本文介绍了在RK3588开发板上使用Rockchip MPP(Media Process Platform)硬件加速接口将JPEG图像解码为RGB格式的完整流程。主要包括三个关键步骤:1) 读取JPEG文件数据;2) 配置MPP解码器,包括初始化上下文、设置RGB888输出格式和解码参数;3) 执行解码任务并将结果保存为图像文件。通过硬件加速,该方法能高效完成JPEG到RGB的转换,适用于嵌入式多媒体处理场景。

J。 1212

Android TextView 跑马灯出现反复卡顿

Android TextView 跑马灯出现反复卡顿,解决办法 在TextView外面套一层LinearLayout,问题解决

jiaoshishazi的博客 2154

如何在Windows上安装Node-RED?

Node-RED 是一款基于流程的可视化编程工具,专注于物联网(IoT)和自动化应用的快速开发,其核心特点是通过拖拽节点构建数据流网络,实现低代码/无代码编程。

猿小白的博客 1171

滚动效果【marquee已被html5弃用】

滚动停止 this.stop 开始 this.start 无缝滚动 scrolltop,滚动高度

Jinming Su 1万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

android TextView 设置Marquee无效问题,最简便的设置

网上的方法多是要重写isFocus方法,要设置focusable,focusableInTouchmode等有时还会莫名无效,麻烦。 在TextView中有这个方法 @Override public void setSelected(boolean selected) { boolean wasSelected = isSelected(); super.setSelec

lolicon10的博客 4729

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

话说android --- 电话本号码的跑马灯效果失效

看完XML文件发现,跑马灯的效果已经实现了啊, android:Ellipsize = "marquee" android:marqueeRepeatLimit = "marquee_forever" android:singleLine = "true" 怎么会没有效果呢??? 后来发现是需要显示的View没有获得焦点导致的问题,怎么样在没有获得焦点的情况下实现跑马灯效果呢最简单也是网上

huangjuecheng的专栏 686

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

marquee:已经被逐步舍弃掉的强大的模拟滚动的标签

marquee:已经被逐步舍弃掉的强大的模拟滚动的标签

小小的客栈 大大的江湖 1万+

Android 自定义TextView 实现文本间距

转载请标明出处: http://blog.youkuaiyun.com/u011974987/article/details/50845269; Android系统中TextView默认显示中文时会比较紧凑,不是很美观。为了让每行保持一定的行间距,可以设置属性android:lineSpacingExtra或android:lineSpacingMultiplier。 但是有时候我们需要在TextView的

stromxu 的专栏 1万+

android 跑马灯出现重复跳动、不滚动问题

跑马灯效果异常

SmilingGirl_的博客 3453

Android跑马灯不生效原因在这里 解决方法:

Android跑马灯不生效原因在这里 解决方法: http://www.yayihouse.com/yayishuwu/chapter/1138

qq_30908729的博客 4989

HTML内置Marquee的Bug?

    以前没注意过,以为MARQUEE属于HTML内置的不会出现什么问题,可是昨天遇到了问题,相同的代码在IE6.0和IE7.0的显示效果竟然让我大吃一惊...    代码如下:看见我在溜达吗?这段内置代码相信大家都会很熟悉,即使简单的实现文字运动的动态效果使用了内置的marquee;    测试结果:IE7.0下正常运行.文字向上滚动;IE6.0不正常运行.文字滚动区域出现一片空白;    修

rzghx的专栏 1315

TextView的marquee跑马灯重复跳动、抖动、没滚动完就重新开始,包裹线性布局也不能解决

由于在进度回调里面同时另一个textview也使用了相同的文本,并且重复设置。判断下重复不设置,再加上线性布局嵌套就正常了,缺一不可。应该是类似给控件设置透明度,底层会共用属性,然后会影响同类型所有的控件一样。 ...

m0_38058826的博客 2954

Android中涉及到的焦点问题,focusable,clickable,enabled

先摘抄下stackoverflow上一个启发了我的回答: try by Changing your code as: private OnClickListener saveButtonListener = new OnClickListener() {     @Override     public void onClick(View v) {            

fancychendong的专栏 2万+

android marquee,使TextView组件的android:ellipsize="marquee"属性生效

由于TextView默认情况下是获取不到焦点的,即便设置android:focusable="true",也是没有获取到焦点的。解决办法:自定义UI1.创建一个类继承TextView,实现3个构造方法。2.覆写isFocused()方法,让它的返回值为true。(这样就能欺骗系统,自定义的控件也就能获取到焦点了)3.在布局文件中不要使用TextView,而是使用自定义类(全路径)。自定义UIpac...

weixin_36419499的博客 363
上一篇: 【原创APP】百度地图显示3个位置
下一篇: gradle插件开发
ithouse
博客等级 码龄12年 200粉丝 212原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ithouse

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值