• android —— 阴影效果和跑马灯效果Textview


    1、带阴影的TextView

    ①、 android:shadowColor=“@color/black”
    设置阴影颜色,需要与shadowRadius一起使用
    ②、android:shadowRadius=“3.0”
    设置阴影模糊程度,设为0.1会变成字体颜色,建议设置3.0
    ③、android:shadowDx=“10”
    设置阴影在水平方向的偏移,水平方向阴影开始的横坐标位置
    ④、android:shadowDy=“10”
    设置阴影在竖直方向的偏移,竖直方向阴影开始的纵坐标位置

    实例:

        <androidx.appcompat.widget.AppCompatTextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hello World!"
            android:shadowRadius="3.0"
            android:shadowColor="@color/black"
            android:shadowDx="10"
            android:shadowDy="10"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    2、跑马灯效果的TextView

    ①、android:singleLine=“true”
    内容当行显示
    ②、 android:focusable=“true”
    是否可以获取焦点
    ③、android:focusableInTouchMode=“true”
    控制视图在触摸模式下是否可以获取焦点
    ④、 android:ellipsize=“marquee”
    在什么位置添加省略文本
    ⑤、android:marqueeRepeatLimit=“marquee_forever”
    字幕动画重复次数

    实现方式1:新建一个textview继承AppCompatTextView,重写isFocused() 方法

    public class CustomTextView extends AppCompatTextView {
    
        public CustomTextView(@NonNull Context context) {
            super(context);
        }
        public CustomTextView(@NonNull Context context, @Nullable AttributeSet attrs) {
            super(context, attrs);
        }
        public CustomTextView(@NonNull Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
        }
        @Override
        public boolean isFocused() {
            return true;
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    xml中使用自定义的view:

      <com.lxd.xdplayer.CustomTextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World!"
            android:singleLine="true"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:ellipsize="marquee"
            android:marqueeRepeatLimit="marquee_forever"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"/>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    实现方式2:在xml布局文件的 AppCompatTextView中添加

        <androidx.appcompat.widget.AppCompatTextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World! Hello World!"
            android:singleLine="true"
            android:focusable="true"
            android:focusableInTouchMode="true"
            android:ellipsize="marquee"
            android:marqueeRepeatLimit="marquee_forever"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent">
            <requestFocus/>
        </androidx.appcompat.widget.AppCompatTextView>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
  • 相关阅读:
    Candence PCB Si 仿真设计篇2:从PCB文件提取仿真拓扑
    python+java病人跟踪治疗管理系统#计算机毕业设计源码
    AI办公自动化:多音频轨电影视频抽取出英语音频
    shell脚本学习笔记
    40G光模块的兼容性与协议标准
    JVM(2)
    聊聊Spring注解@Transactional失效的那些事
    正则表达式(常用)
    Flink1.15源码解析--安全模块及安全上下文
    HDLbits exercises 2 (MODULES节选题)
  • 原文地址:https://blog.csdn.net/qq_26554909/article/details/134459429