Android开发:TextView设置字体横向滚动

两种方法实现TextView跑马灯效果(字体横向滚动) 最近在做关于安卓开发的复习学习,毕竟熟能生巧,话不多说,直接第一种方法上:(这种适用于一个TextView滚动)在TextView的标签中加上如下代码:(红色部分为必须设置选项)android:singleLine="true"   android:ellipsize="marquee"   android:focusable="true"   android:focusableInTouchMo... 阅读详情

最近项目中遇到textview中文字显示不全的问题,由于界面设计原因,textview只能占比一定的宽度。基于以上情况,查找了一下textview的属性,强大的textview居然可以设置字体滚动,于是,轻松解决:

1、textview获取焦点后才可以进行滚动,即点击textview后滚动,事例如下:

<TextView
    android:id="@+id/tv_time"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical"
    android:layout_margin="10dp"
    android:layout_weight="1"
    android:ellipsize="marquee"
    android:focusable="true"
    android:focusableInTouchMode="true"
    android:marqueeRepeatLimit="marquee_forever"
    android:scrollHorizontally="true"
    android:singleLine="true" />

 

总结:只需要在textview中设置属性

android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:singleLine="true"

 

2、textview无需获取焦点就可以进行滚动,需要重写textview,事例如下:

 

自定义ScrollingTextView使其继承textview:

public class ScrollingTextView extends android.support.v7.widget.AppCompatTextView {
    public ScrollingTextView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
    }

    public ScrollingTextView(Context context, AttributeSet attrs) {
        super(context, attrs);
    }

    public ScrollingTextView(Context context) {
        super(context);
    }

    @Override
    protected void onFocusChanged(boolean focused, int direction, Rect previouslyFocusedRect) {
        if (focused)
            super.onFocusChanged(focused, direction, previouslyFocusedRect);
    }

    @Override
    public void onWindowFocusChanged(boolean focused) {
        if (focused)
            super.onWindowFocusChanged(focused);
    }

    @Override
    public boolean isFocused() {
        return true;
    }
}

 

在layout中使用:

<com.crlgc.intelligentparty.view.plan.util.ScrollingTextView
    android:id="@+id/cycle_text_create"
    android:layout_width="115dp"
    android:layout_height="wrap_content"
    android:layout_gravity="center_vertical"
    android:layout_margin="10dp"
    android:ellipsize="marquee"
    android:focusable="true"
    android:focusableInTouchMode="true"
    android:marqueeRepeatLimit="marquee_forever"
    android:scrollHorizontally="true"
    android:singleLine="true" />

总结:重写textview,然后需要在layout中使用,并设置如下属性

android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true"
android:marqueeRepeatLimit="marquee_forever"
android:scrollHorizontally="true"
android:singleLine="true"

 

 

Android组件TextView实现水平滚动效果 然后,我们设置了水平滚动属性为true(setHorizontallyScrolling),并且将TextView设置为可获取焦点(setFocusable)和在触摸模式下可获取焦点(setFocusableInTouchMode)。接下来,在Java代码中找到该TextView,并为其设置滚动的相关属性。首先,在XML布局文件中添加一个TextView组件,设置宽度为包裹内容(wrap_content),并且设置TextView的水平滚动属性为true。如果你有任何问题,请随时提问。 阅读详情

相关推荐

AndroidStudio_安卓原生开发_显示不开的时候设置TextView文字横向滚动---Android原生开发工作笔记142

设置横向滚动首先要在layout的xml文件中先给TextView加入: <TextView ... android:ellipsize="marquee" android:focusable="true" android:focusableInTouchMode="true" android:marqueeRepeatLimit="marquee_forever" android:singleLine="true" android:focusa...

添柴程序猿的专栏 851

Android实现滚动效果 分类: Android开发 ...

文字左右滚动三个属性: android:singleLine="true" android:ellipsize="marquee" android:marqueeRepeatLimit="marquee_forever" Android中我们为了实现文本的滚动可以在ScrollView中嵌入一个TextView,其实TextView自己也可以实现多行滚动的,毕竟 Scr...

weixin_30568591的博客 323

Android控件全解手册 - 玩转TextView属性

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)

空名先生 7294

android:stretchColumns与 android:scrollHorizontally

android:stretchColumns与 android:scrollHorizontally 分类: android2012-04-20 00:57 208人阅读 评论(0) 收藏 举报 其中 android:stretchColumns=”0″ 作用是让第一列可以扩展到所有可用空间;下面我们讲一下TableLayout几个重要的属性: collapseColumns

wh123weixiao123的专栏 2859

SWAT模型非点源模拟原理

目录引言模型概述非点源污染模拟原理物质迁移内容过程营养物农药病原菌运移河道水质模型营养元素的地表水体循环河道水质模拟藻类模拟氮元素磷元素生化需氧量及溶解氧重金属的运移蓄水体水质模拟 引言 今天无意接触到这一块,就记录下来了。 模型概述 1、流域中非点源污染的来源主要是农业化肥和农药的施用。 2、氮、磷等营养物和农药的迁移和转化取决于化合物在土壤环境中经历的转化过程。 3、SWAT模型可以模拟水文相应单元内氮、磷完整的营养物循环过程和任何一种农药的降解过程。 4、SWAT模拟流域内泥沙、藻类、溶解氧、有机污染

DoWayChan的博客 4877

STM32F407 HAL库定时器触发ADC采集与DMA数据传输(定时器TIM+ADC+DMA)

在STM32F407系列微控制器的开发中,结合定时器、ADC(模数转换器)与DMA(直接存储器访问)控制器,能够显著提升数据采集与传输的效率。本文将指导你如何使用STM32 HAL库,通过定时器触发ADC1的单通道采集,利用DMA传输数据,最终通过串口将电压值打印出来。具体实现中,我们将读取ADC1的通道5(对应引脚PA5),并将转换得到的电压值发送到串口助手上进行显示。

jmlinux的博客 7011

Android <Textview>的高级应用:真的很高级(提高篇)

学会了textview的基本用法,我最近有看到了一个好玩的:跑马灯实现文字滚动,作为一个基本的组件,它的作用当然巨大,所以我们有必要提高一下对textview的认知,于是我今天就利用课余时间做了一个跑马灯字体,还算看得下去: textview的高级运用:跑马字 首先,我新建一个activity,放上我们的基本组建: <TextView android:layout_width="wrap_content" android:layout_height="wrap

aiwanchengxu的博客 1405

Moveit Servo学习

MoveIt Servo功能与配置指南 摘要:本文介绍了MoveIt Servo的功能特性,包括支持关节速度、末端执行器速度和位置控制,以及安全功能如奇点检查、碰撞检测等。通过示例展示了如何运行伺服控制demo,详细解析了关键节点和话题。最后以睿尔曼rml_63机器人为例,讲解了如何自定义伺服配置文件,包括环境设置、输入输出参数配置、平滑滤波器和规划场景监控等关键配置项。文章提供了从基础使用到自定义机器人配置的完整指导,帮助开发者实现高效的实时运动控制。

Fisher的博客 1173

android:stretchColumns=”0″

其中 android:stretchColumns=”0″ 作用是让第一列可以扩展到所有可用空间;下面我们讲一下TableLayout几个重要的属性: collapseColumns – 设置隐藏那些列,列ID从0开始,多个列的话用”,”分隔stretchColumns – 设置自动伸展那些列,列ID从0开始,多个列的话用”,”分隔shrinkColumns -设置自动收缩那些列,列ID从0开始...

262

仿真每日一练 | Workbench如何在网格节点施加载荷

打开Workbench 2020 R2,在分析系统中双击静力分析工程项目,双击Geometry打开Design Modeler,在菜单栏的单位(Units)修改为毫米(Millimeter),在XY平面创建草图,在草图内绘制矩形并标注尺寸,拉伸长方体,如图1所示。:单个零部件,无连接关系,但需定义一个节点组件,如图5所示,选择Create Named Selection。对添加的节点组件施加Y方向50N的力,如图8所示。1-1-3.有限元系统模型构建。1-1-1.几何模型构建。1-1-2.材料定义。

ansysxuexizhe的博客 1236

【Ellisys】【使用技巧】【二】

支持所有常见的编码器和协议实时播放或保存(无线和HCI)循环播放导出与其他视图协同(OverView 和 Spectrum)可以通过下面的位置看 重传的包。

奔跑吧 android 的博客 135

android设置字体滚动,Android开发:TextView设置字体横向滚动

最近项目中遇到textview中文字显示不全的问题,由于界面设计原因,textview只能占比一定的宽度。基于以上情况,查找了一下textview的属性,强大的textview居然可以设置字体滚动,于是,轻松解决:1、textview获取焦点后才可以进行滚动,即点击textview后滚动,事例如下:总结:只需要在textview中设置属性android:ellipsize="marquee"and...

weixin_28363123的博客 2027

异构图中的注意力机制网络:节点级别和语义级别的注意力(Python实现)

在本文中,我们介绍了如何使用Python实现异构图中的节点级别注意力和语义级别注意力。通过语义级别注意力,我们可以根据节点的语义信息对节点进行加权聚合。在本文中,我们将介绍如何使用Python实现异构图中的注意力机制网络,包括节点级别的注意力和语义级别的注意力。最后,我们使用注意力权重对节点特征进行加权聚合,得到聚合后的节点表示。然后,将聚合后的节点表示传递给语义级别注意力模型,根据节点的语义信息进行加权聚合,得到最终的表示。函数中,首先使用节点级别注意力模型对节点特征进行聚合,得到聚合后的节点表示。

HackNebulaZ的博客 485

android 上下偏差怎么写_Android TextView 上下边距问题

如果想设置TextView字体的上下边距最小,调整了参数android:layout_marginTop="0px"android:layout_marginBottom="0px"android:padding="0px"均不能解决问题。那么可以用:android:includeFontPadding="false"或者 textview.setIncludeFontPadding(false)...

weixin_39850143的博客 498

Python编程基础05:运算符与表达式

文章目录一、算术运算符1、分类说明表2、注意事项3、案例演示任务1、计算成绩差与平均成绩课堂练习:编程处理带余除法。任务2、打印购物小票 运算符就是专门用于告诉程序执行特定运算或逻辑操作的符号。表达式是指由常量、变量和运算符组成的一个算式。编写程序对数据进行处理,其实处理就是对数据实施各种各样的运算,搞懂运算符与表达式是我们编写程序的基础性工作,本次讲课笔记通过案例讲解各种运算符的用法以及正确书写Python表达式的注意事项。 一、算术运算符 Python中的算术运算符就是用来处理四则运算的符号,也是

howard2005的专栏 3119

OpenCV实战之人脸美颜美型(八)——大眼(上)

从大众审美的角度来看,眼睛适当的“变大”会让人显得更加年轻。因此美型中就有一项大眼功能,其效果就是让眼睛适当变大,这章内容就围绕着大眼算法展开。

On my way 1211

Android字体横向滚动条目

原理自定义textview 源码:http://download.youkuaiyun.com/detail/lm_zp/9517135 XMl <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"

从零开始 1029

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

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

Android TextView 上下边距问题

如果想设置TextView字体的上下边距最小,调整了参数android:layout_marginTop="0px"android:layout_marginBottom="0px"android:padding="0px"均不能解决问题。 那么可以用:android:includeFontPadding="false"或者 textview.setIncludeFontPadding(fals...

weixin_34126557的博客 1084

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Android修行手册-TextView不常用属性篇

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)

空名先生 1万+

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

安卓手册 第五章(开发之TextView)

安卓手册 第五章(开发之TextView) 概述:以后的文章将采用Android每一个组件为单章介绍,涵盖textview的所有属性和基本知识,在介绍的过程中会举例相应的使用场景(实战),建议大家能仔细阅读,因为这些常用组件当中有个别属性会给你带了程序性能的提升和开发技巧的提高。 首先,笼统的介绍下textview的官方属性: 红色表示的属性都是具有使用窍

大写的牛逼 1万+

android:textalignment 参数解释,Android笔记 | TextView的常用属性和方法

颜色可以随便写一个“#000”形式的属性值,再通过点击左边显示行号旁边的颜色显示方块,弹出来颜色选择器对颜色进行选择。在Android手机中是可以通过系统设置调整字体的大小,sp会随着手机设置字体的大小变化而变化,而dp不会变。通过android studio生成的int值并不是真正的颜色值,必须通过getResources().getColor将真正的16进制颜色值取得到才可以。设置文本只显示一行,未显示的文本以 "..." 代替,不过该属性以过期,可以设置一下属性代替该效果。

m0_54854467的博客 3656

Android -- Demo(一) TextView 自定义走马灯效果(横向,纵向)

Android – Demo(一) TextView 自定义走马灯效果(横向,纵向) 效果图: 布局: <!--横向滚动--> <com.example.toollibs.OverWriteClass.MarqueeHorizontal android:id="@+id/marqueeH" android:layout_width="match_parent" android:layout_height="60dp"/> &lt

8023的博客 463

TextView属性设置

android:autoLink 是否自动链接网址或邮箱地址 android:autoText 自动检测错误 android:bufferType 决定getText()返回的类型 android:capitalize 指定使用类型 android:cursorVisible 光标是否可见 android: clickable 把其属性更改为true,为textView设置事件拦截 android:digits 数字输入 android: drawableLeft 用于在文本框左侧绘制图...

Black_Cat_33的博客 1503

TextView的其它用法

 1.用TextView显示图片和文字          可将图片与文字写在一个TextView中          android:drawableTop="@drawable/grass" 2.用TextView显示两种颜色的字体    方法一:在主活动中添加如下代码: private String source = "&lt;font color=\"#aabb00\"&gt;"...

xueguangye的博客 232

Android TextView 显示字数的限制问题

Android TextView 显示字数的限制问题 —2021/06/07 今天写课设的时候碰到安卓的TextView字体超出了,本身的限制。csdn找了一下怎么解决这个问题。 未解决之前的 解决之后的 TextView中有个ellipsize属性,作用是当文字过长时,该控件该如何显示,解释如下: 1.android :ellipsize=”start”—–省略号显示在开头 2.android:ellipsize=”end”——省略号显示在结尾 3.android:ellipsize=”midd

乐褀的博客 2460

推荐使用:Android Vertical Marquee TextView 横向滚动文本神器!

推荐使用:Android Vertical Marquee TextView 横向滚动文本神器! 项目介绍 Vertical Marquee TextView 是一个专为 Android 设计的自定义文本视图组件,它为你的应用带来了垂直滚动(横向)的动态效果。灵感源自于传统的电视滚动新闻,这个库使得在有限的空间内展示大量文本变得既美观又实用。 项目技术分析 该库基于 Android 的 TextV...

gitblog_00080的博客 550
上一篇: Android开发:四舍五入BigDecimal.ROUND_HALF_XXX的各种用法
下一篇: Android开发:toast封装工具类
android157
博客等级 码龄9年 193粉丝 95原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值