添加一个新的activity

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><Buttonandroid:id="@+id/btn_textview"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="TextView"/></LinearLayout>

MainActivity.java

package com.example.helloword;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;public class MainActivity extends AppCompatActivity {private Button mBtnTextView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);mBtnTextView = findViewById(R.id.btn_textview);mBtnTextView.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {//跳转到TextView演示界面Intent intent = new Intent(MainActivity.this,TextViewActivity.class);startActivity(intent);}});}
}

添加导入成功,继续操作⏬

activity_text_view.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"android:padding="20dp"><TextViewandroid:id="@+id/tv_1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/tv_text1"android:textColor="#000000"android:textSize="24sp"/>
<!--    text="@string/tv_text1"引用在res/values/string.xml里的文字abcdef-->
<!--    也可以直接引用android:text="abcdef",但注意文字只能出现一次-->
<!--    文字大小单位用sp--><TextViewandroid:id="@+id/tv_2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/tv_text1"android:textColor="#000000"android:textSize="80sp"android:maxLines="1"android:ellipsize="end"android:layout_marginTop="20dp"/>
<!--    功能:显示不下使用…-->
<!--    第二个文字太大(图一)会变为两行,加入maxLines="1"变为一行(图2),加入ellipsize不显示的变为…--><TextViewandroid:id="@+id/tv_3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="读书"android:textColor="#000000"android:textSize="24sp"android:layout_marginTop="20dp"android:drawableRight="@drawable/icon_read" />
<!--    功能:文字+icon-->
<!--    res/drawable文件夹下显示图片,Ctrl+c图片文件,在drawable上Ctrl+v即可导入-->
<!--    android:drawableRight导入图片--><TextViewandroid:id="@+id/tv_4"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/tv_text1"android:textColor="#000000"android:textSize="24sp"android:layout_marginTop="20dp"/>
<!--    功能:中划线-->
<!--    中划线不能直接通过布局文件写属性,要通过TextViewActivity.java的代码来实现--><TextViewandroid:id="@+id/tv_5"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/tv_text1"android:textColor="#000000"android:textSize="24sp"android:layout_marginTop="20dp"/>
<!--    功能:下划线--><TextViewandroid:id="@+id/tv_6"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_marginTop="20dp"android:text="狂奔的蜗牛狂奔的蜗牛狂奔的蜗牛狂奔的蜗牛狂奔的蜗牛"android:textColor="#000000"android:textSize="24sp"android:singleLine="true"android:ellipsize="marquee"android:marqueeRepeatLimit="marquee_forever"android:focusable="true"android:focusableInTouchMode="true"android:clickable="true"/>
<!--    功能:跑马灯-->
<!--    android:singleLine="true"一定要加,使其变为单行-->
<!--    android:marqueeRepeatLimit为循环次数,marquee_forever为永远跑下去--></LinearLayout>

string.xml

<resources><string name="app_name">HelloWord</string><string name="tv_text1">狂奔的蜗牛</string>
</resources>

TextViewActivity

package com.example.helloword;import androidx.appcompat.app.AppCompatActivity;import android.graphics.Paint;
import android.os.Bundle;
import android.widget.TextView;//import classpublic class TextViewActivity extends AppCompatActivity {private TextView mTv4,mTv5;//声明空间@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_text_view);mTv4 = findViewById(R.id.tv_4);//找到空间mTv4.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);//中划线mTv4.getPaint().setAntiAlias(true);//去除中划线锯齿mTv5 = findViewById(R.id.tv_5);//找到空间mTv5.getPaint().setFlags(Paint.UNDERLINE_TEXT_FLAG);//下划线}
}


图一

图二

图三

最终效果:

Android Emulator - Nexus

Android之TextView练习相关推荐

  1. android 保存textview,为什么没有TextView(带ID)会自动保存它的状态?

    我的理解是所有具有ID的标准视图都应该自动保存它们的状态,并且在尝试这个例子时我发现它非常令人困惑. 我只有1个活动和主要布局如下所示. 当我通过单击按钮更改TextView的文本,然后旋转屏幕时,T ...

  2. android 自定义view文字不齐,Android 解决TextView排版参差不齐的问题

    Android 解决TextView排版参差不齐的问题 在app中,展示数据时,里面有汉字.数字.特殊字符时,由于全角.半角问题导致TextView参差不齐.在网上找了许多,半角转全角并没什么用,还有 ...

  3. Android 解决Android的TextView和EditText换行问题

    Android 解决Android的TextView和EditText换行问题 参考文章: (1)Android 解决Android的TextView和EditText换行问题 (2)https:// ...

  4. 让android的TextView可以滚动

    让android的TextView可以滚动 android 我想要在一个文本视图里显示一段文本,但是文字太多,一屏显示不下.我需要让我的TextView可以滚动.我应该怎么做,这是我的代码. fina ...

  5. android 字符串,textview

    Android - CharSequence和String的比较和转换 Android自定义TextView边框颜色(动态改变边框颜色以及字体颜色) Android TextView加中划线,下划线 ...

  6. Android 设置TextView字体加粗

    今天,简单讲讲Android里如何设置TextView字体加粗. 不废话了,用过多次,还是没记住.直接上代码. 1.布局文件中这样设置即可: XML/HTML代码 android:textStyle= ...

  7. android 决TextView中MaxLines与ellipsize=end冲突问题

    今天,讲讲如何在多行文本后显示省略号. TextView控件有一个属性是ellipsize,指的是当文字内容长度超过TextView大小时显示问题,一般情况下我们都是用省略号表示,常用的情况有以下四种 ...

  8. Android的TextView在显示文字的时候,如果有段中文有英文,有中文,有中文标点符号,你会发现,当要换行的时候遇到中文标点, 这一行就会空出很多空格出来...

    一.问题描述: Android的TextView在显示文字的时候,如果有段中文有英文,有中文,有中文标点符号,你会发现,当要换行的时候遇到中文标点, 这一行就会空出很多空格出来.原因是: 1) Tex ...

  9. Flutter中嵌入Android 原生TextView

    更多文章请查看 flutter从入门 到精通 本篇文章 中写到的是 flutter 调用了Android 原生的 TextView 案例 添加原生组件的流程基本上可以描述为: 1 android 端实 ...

最新文章

  1. 生物信息学 生物科学、农学、林学、医学
  2. sql server无效的对象名称 - 但表列在SSMS表列表中
  3. 摆线减速器原理、减速比、设计方法
  4. 容量法和库仑法的异同点_【图文专辑】第十讲:容量法高锰酸盐指数的测定
  5. python3 aes 解密
  6. VC++ 字符串操作学习总结
  7. bootstrap 提交表单给后台_基于Bootstrap的响应式后台管理模板Ace
  8. php 距离排序,php 附近由近到远排序查询
  9. 收发一体超声波测距离传感器模块_芜湖低功耗超声波液位计物位计设备排名
  10. python字符串处理函数汇总_Python内置的字符串处理函数详细整理(覆盖日常所用)...
  11. Android开发系列(十二) QQ联系人列表升级版——ListView和ScrollView高阶使用方法...
  12. 两个或多个线程执行完成之后继续执行之后的步骤,CountDownLatch与CyclicBarrier
  13. Android studio for mac
  14. Android入门笔记09
  15. 面对面的办公室【冯·诺伊曼与艾伦•图灵】——纪念艾伦•图灵百年诞辰 1912.6.23-2012.6.23...
  16. 女生专属树洞,树懒APP内测(附下载)
  17. 动物拼图代码html,制作动物拼图美术教案
  18. 监控、无人机摄像头RTSP协议对接腾讯云直播
  19. GIS教程之Cesium 基础入门教程
  20. ajax后台如何把对象转为json_Ajax向前后台传递json和转换

热门文章

  1. Sql Server 2000 无法打开用户默认数据库。登录失败
  2. 思想篇(1)--企业需要什么样的人才?
  3. Linux检查CPU过高的原因
  4. day055056Django之多表操作,多表查询
  5. 如何在C++中产生随机数
  6. mormot json操作
  7. iOS开发中静态库制作 之.a静态库制作及使用篇
  8. Android 学习笔记 Service服务与远程通信...(AIDL)
  9. 【小型JavaFx项目】英汉词典
  10. 期货市场技术分析01_理论基础