1、TextView 基础属性
- layout_ width; 组件的宽度
 - layout. _height: 组件的高度
 - id: 为TextView设置- -个组件id
 - text; 设置显示的文本内容
 - textColor: 设置字体颜色
 - textStyle: 设置字体风格,三个可选值: n normal(无效果),bold(加粗), italic(斜体)
 - textSize: 字体大小,单位一般是用sp
 - background: 控件的背景颜色,可以理解为填充整个控件的颜色,可以是图片
 - gravity: 设置控件中内容的对齐方向,TextView中是文字, ImageView中是图片等等。
 
代码练习:
<LinearLayout android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android">
    <TextView
        android:id="@+id/tv_one"
        android:text="@string/tv_one"
        android:textColor="@color/black"
        android:textStyle="bold"
        android:textSize="20sp"
        android:background="@color/red"
        android:gravity="center"
        android:layout_width="wrap_content"
        android:layout_height="200dp">
    </TextView>
</LinearLayout>
 
2、带阴影的TextView
- android:shadowColor:设置阴影颜色,需 要与shadowRadius-起使用
 - android:shadowRadius:设置阴影的模糊程 度,设为0.1就变成字体颜色了,建议使用3.0
 - android:shadowDx:设置阴影在水 平方向的偏移就是水平方向阴影开始的橫坐标位置
 - android:shadowDy:设置阴影在竖 直方向的偏移就是竖直方向阴影开始的纵坐标位置
 
代码练习:
<LinearLayout android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    xmlns:andro>
    <TextView
        android:
        android:text="@string/tv_one"
        android:textColor="@color/black"
        android:textStyle="bold"
        android:textSize="20sp"
        android:shadowColor="@color/red"
        android:shadowRadius="3.0"
        android:shadowDx="10.0"
        android:shadowDy="10.0"
        android:gravity="center"
        android:layout_width="wrap_content"
        android:layout_height="200dp">
    </TextView>
</LinearLayout>
 
3、实现跑马灯的三种方式
第1种方式:手动点击 TextView ,自动跑起来
TextView跑马灯相关属性介绍:
- android:ellipsize=“marquee” 内容单行显示
 - android:focusable=“true” 是否可以获取焦点
 - android:focusableInTouchMode=“true” 用于控制视图在触摸模式下是否可以聚焦
 - android:ellipzise 在哪里省略文本
 - android:marqueeRepeatLimit=“marquee_forever” 字幕动画重复的次数
 - android:clickable=“true” 可以点击
 
代码如下(示例):
> activity_main.xml
>     android:ellipsize="marquee"
>     android:marqueeRepeatLimit="marquee_forever"
>     android:focusable="true"
>     android:focusableInTouchMode="true"
>     android:clickable="true"
 
第2方式:自定义 MyTextView , 不用点击 TextView,启动后直接跑起来
代码如下(示例):
package com.example.my1;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.TextView;
import androidx.annotation.Nullable;
public class MyTextView extends androidx.appcompat.widget.AppCompatTextView {
    public MyTextView(Context context) {
        super(context);
    }
    public MyTextView(Context context, @Nullable AttributeSet attrs) {
        super(context, attrs);
    }
    public MyTextView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }
    @Override
    public boolean isFocused() {
        return  true;
    }
}
activity_main.xml
<com.example.my1.MyTextView
    android:id="@+id/tv_one"
    android:layout_width="match_parent"
    android:layout_height="200dp"
    android:text="@string/tv_one"
    android:textSize="30sp"
    android:textColor="@color/black"
    android:textStyle="italic"
    android:background="@color/white"
    android:gravity="center_vertical"
    android:shadowColor="@color/red"
    android:shadowRadius="3.0"
    android:shadowDx="10.0"
    android:shadowDy="10.0"
    android:ellipsize="marquee"
    android:marqueeRepeatLimit="marquee_forever"
    android:focusableInTouchMode="true"
    tools:ignore="MissingConstraints"
    android:singleLine="true">
</com.example.my1.MyTextView>
 
第3方式:改回TextView , 加个 requestFocus
代码如下(示例):
<TextView
    android:id="@+id/tv_one"
    android:layout_width="match_parent"
    android:layout_height="200dp"
    android:text="@string/tv_one"
    android:textSize="30sp"
    android:textColor="@color/black"
    android:textStyle="italic"
    android:background="@color/white"
    android:gravity="center_vertical"
    android:shadowColor="@color/red"
    android:shadowRadius="3.0"
    android:shadowDx="10.0"
    android:shadowDy="10.0"
    android:ellipsize="marquee"
    android:marqueeRepeatLimit="marquee_forever"
    android:focusableInTouchMode="true"
    tools:ignore="MissingConstraints"
    android:singleLine="true">
    <requestFocus/>
</TextView>
 

以上就是Android比较初学者中的,Android studio中TextView控件学习,技术是一步一步累积的。如何快速进阶Android开发技术呢?需要一个学习路径和一套完整的学习资料,在这里我推荐一部市面上比较完整的《Android核心技术进阶手册》里面对初学者也是很友好的,如果你是刚毕业或者开发一两年;那么这将对你进步很有帮助,需要可以点击获取方式参考哦!
总结
关于Android中的控件还有很多,常用控件有:
- TextView :用于显示文字
 - EditText :输入框控件
 - Button 按钮控件
 - ImageView 图片显示控件
 - RadioButton 单选按钮控件
 - CheckBox 复选框控件
 
Android的学习之路还有很多,但是也不用着急;技术都是靠累积的,一步一步来就好哦。


![[Python]字符串常用操作与方法](https://img-blog.csdnimg.cn/b866807aef9941c9a2255576c7151368.png)
















