📜  在Android中使用TextView

📅  最后修改于: 2021-05-13 18:21:53             🧑  作者: Mango

Android中的TextView是基本且重要的UI元素之一。这在UI体验中起着非常重要的作用,并且取决于如何向用户显示信息。 android中的此TextView小部件可以在各种情况下进行动态化。例如,如果要突出显示信息的重要部分,则包含该子字符串的子字符串将被斜体化,或者必须将其变为粗体,这是另一种情况,即如果TextView中的信息包含一个超链接,该超链接指向特定的Web URL,则必须使用超链接对其进行跨接,并在其下划线。请查看以下列表和图像,以了解整体讨论的内容。

  1. 格式化TextView
  2. TextView的大小
  3. 更改文字样式
  4. 更改文字颜色
  5. 文字阴影
  6. 字母间距和全部大写
  7. 为TextView添加图标
  8. TextView的HTML格式

在Android中使用TextView

分步实施

步骤1:创建一个空的活动项目

  • 创建一个空的活动Android Studio项目。参考Android |如何在Android Studio中创建/启动新项目?了解如何创建一个空的活动Android Studio项目。

步骤2:使用activity_main.xml文件

  • 主要布局和布局,其中仅包含一个TextView,并且随着我们继续讨论各种上下文而变化。
  • 要实现活动的UI,请在activity_main.xml文件中调用以下代码。
XML


  
    
  


XML


  
    
    
  


XML


  
    
  
    
  
    
  
    
  
  


XML


  
    
  
        
        
  
        
  
        
  
        
  
    
  


XML


  
    
    
  
    
    
  
    
    
  


XML


  
    
  
    
  
    
  


XML


  
    
  
    
  


XML


  
    
  
    
  


XML


  
    
  


Kotlin
import android.os.Build
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.text.Html
import android.text.method.LinkMovementMethod
import android.widget.TextView
import androidx.annotation.RequiresApi
  
class MainActivity : AppCompatActivity() {
    @RequiresApi(Build.VERSION_CODES.N)
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
  
        val text: TextView = findViewById(R.id.text)
        val s: String =
            "This is italic bold underlined 
Goto GeegksforGeeks"            // movementMethod which traverses the links in the text buffer         text.movementMethod = LinkMovementMethod.getInstance()            text.text = Html.fromHtml(s, Html.FROM_HTML_MODE_COMPACT)     } }


输出界面:

1.格式化TextView

  • 以上四种类型的面孔将在XML中的TextView的“ typeFace”属性下调用。
  • 调用以下代码,并注意TextView的“ typeFace”属性。

XML格式



  
    
    
  

输出:

2. TextView的大小

  • 文本视图的此功能支持必须向用户显示什么类型的内容。例如,如果有一个标题,可以实现6种类型的标题,请看下图,其中包含Google的Material Design建议的文本视图大小和文本视图样式的准则。

  • 在android中用于更改文本视图大小的属性是“ textSize”。
  • 请参阅以下代码及其输出,以更好地理解。

XML格式



  
    
  
    
  
    
  
    
  
  

输出:

3.更改文字样式

  • 可以使用属性“ textStyle”实现android中文本的文本样式
  • 也可以使用管道运算符来实现多种文本样式。例如“ android:textStyle =” bold | italic”。
  • 要实现各种文本样式,请参考以下代码及其输出。

XML格式



  
    
  
        
        
  
        
  
        
  
        
  
    
  

输出:

4.更改文字颜色

  • 文本的颜色也应根据显示给用户的信息上下文的变化而变化。
  • 例如,如果有警告文本,则警告颜色必须为红色,对于禁用的文本,不透明度或文本颜色应为灰色。要更改文本的颜色,请使用属性“ textColor”
  • Android还提供了预定义的文本颜色,可以使用“ @android:color / yourColor”作为“ textColor”的值来实现。在这里,值可以是十六进制代码或android提供的预定义颜色。
  • 请参阅以下代码及其输出,以更好地理解。

XML格式



  
    
    
  
    
    
  
    
    
  

输出:

5.文字阴影

  • 文字阴影也可以在Android中提供。带阴影的文本视图所需的属性是:
  • 请参阅以下代码及其输出,以更好地理解。

XML格式



  
    
  
    
  
    
  

输出:

6.字母间距和全部大写

  • 字母间距和大写字母是android中Text View的一些重要属性。
  • 对于按钮和选项卡布局的文本,该文本应为Google Material Design推荐的大写字母。
  • 字母间距也应根据情况保持。
  • 请参阅以下代码及其输出,以更好地理解。

XML格式



  
    
  
    
  

输出:

7.为TextView添加图标

  • Android还允许在文本视图中添加drawable。
  • 在三个位置添加用于TextView的图标。它们是开始,结束,顶部和底部。
  • 请参考以下代码及其输出,以了解如何将可绘制图标添加到“文本视图”。

XML格式



  
    
  
    
  

输出:

8. TextView的HTML格式

  • 在Android中,可以使用Html类格式化字符串。
  • 请参考以下示例,以更好地理解。
  • 将以下代码添加到activity_main.xml内。

XML格式



  
    
  

  • 现在,在MainActivity.kt文件中添加以下代码。

科特林

import android.os.Build
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.text.Html
import android.text.method.LinkMovementMethod
import android.widget.TextView
import androidx.annotation.RequiresApi
  
class MainActivity : AppCompatActivity() {
    @RequiresApi(Build.VERSION_CODES.N)
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
  
        val text: TextView = findViewById(R.id.text)
        val s: String =
            "This is italic bold underlined 
Goto GeegksforGeeks"            // movementMethod which traverses the links in the text buffer         text.movementMethod = LinkMovementMethod.getInstance()            text.text = Html.fromHtml(s, Html.FROM_HTML_MODE_COMPACT)     } }

输出:在模拟器上运行

想要一个节奏更快,更具竞争性的环境来学习Android的基础知识吗?
单击此处,前往由我们的专家精心策划的指南,以使您立即做好行业准备!