首页 > 其他分享 >Android开发-Android常用组件-TextView文本框

Android开发-Android常用组件-TextView文本框

时间:2023-03-25 17:33:54浏览次数:41  
标签:xml text 文本框 设置 Android 文本 android TextView

04     常用组件

4.1  TextView

  • TextView (文本框),用于显示文本的一个控件。
  • 文本的字体尺寸单位为sp :
  • sp: scaled pixels(放大像素). 主要用于字体显示。文本常用属性:

属性名

作用

 

id

为TextView设置一个组件id,根据id,我们可以在Java代码中通过

findViewById()的方法获取到该对象,然后进行相关属性的设置

layout_width

组件的宽度

layout_height

组件的高度

 

gravity

设置控件中内容的对齐方向,TextView中是文字,ImageView中是图片等等

 

text

设置显示的文本内容,一般我们是把字符串写到string.xml文件中,然后通过@String/xxx取得对应的字符串内容的

textColor

设置字体颜色,同上,通过colors.xml资源来引用

 

textStyle

设置字体风格,三个可选值:normal(无效果),bold(加粗),italic(斜体)

textSize

字体大小,单位一般是用sp

background

控件的背景颜色,可以理解为填充整个控件的颜色,可以是图片

autoLink

识别链接类型 (web, email, phone ,map ,none, all)

<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/Gridlayout1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:columnCount="4"
    android:orientation="horizontal"
    android:rowCount="6">

    <TextView
        android:id="@+id/textview"
        android:layout_width="300dp"
        android:layout_height="400dp"
        android:gravity="center"    //文本中内容的对齐方向
        android:text="这是一个textView文本框"
        android:textColor="#d2364c"
        android:textStyle="italic"    //字体风格:斜体
        android:textSize="20sp"
        android:background="#ffffcc"
        android:autoLink="web"    //识别链接类型
        />

</GridLayout>

<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/Gridlayout1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:columnCount="4"
    android:orientation="horizontal"
    android:rowCount="6">

    <TextView
        android:id="@+id/textview"
        android:layout_width="300dp"
        android:layout_height="400dp"
        android:gravity="center"
        android:text="www.baidu.com"
        android:textColor="#d2364c"
        android:textStyle="italic"
        android:textSize="20sp"
        android:background="#ffffcc"
        android:autoLink="web"
        />

</GridLayout>

    •   text内容、颜色写入资源文件(有利于代码的维护和复用)
    • color.xml:

      <?xml version="1.0" encoding="utf-8"?>
      <resources>
          <color name="purple_200">#FFBB86FC</color>
          <color name="purple_500">#FF6200EE</color>
          <color name="purple_700">#FF3700B3</color>
          <color name="teal_200">#FF03DAC5</color>
          <color name="teal_700">#FF018786</color>
          <color name="black">#FF000000</color>
          <color name="white">#FFFFFFFF</color>
      </resources>

       string.xml:

      <resources>
          <string name="app_name">My Application</string>
          <string name="textview">www.baidu.com</string>
      </resources>

       text_view.xml:

    • <?xml version="1.0" encoding="utf-8"?>
      <GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:id="@+id/Gridlayout1"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:columnCount="4"
          android:orientation="horizontal"
          android:rowCount="6">
      
          <TextView
              android:id="@+id/textview"
              android:layout_width="300dp"
              android:layout_height="400dp"
              android:gravity="center"
              android:text="@string/app_name"
              android:textColor="@color/purple_200"
              android:textStyle="italic"
              android:textSize="20sp"
              android:background="#ffffcc"
              android:autoLink="web"
              />
      
      </GridLayout>

       

  • 文本设置边框
    •   实现原理:

      编写一个ShapeDrawable的资源文件!然后TextView将 background 设置为这个drawable 资源即可

    •   ShapeDrawable的资源文件
      •     <solid android:color = "xxx"> 这个是设置背景颜色的
      •     <stroke android:width = "xdp" android:color="xxx"> 这个是设置边框的粗细,以及边框颜色的
      •     <padding androidLbottom = "xdp"...> 这个是设置边距的
      •     <corners android:topLeftRadius="10px"...> 这个是设置圆角的
      •     <gradient> 这个是设置渐变色的,可选属性有:
        • startColor:起始颜色
        • endColor:结束颜色
        • centerColor:中间颜色
        • angle:方向角度,等于0时,从左到右,然后逆时针方向转,当angle = 90度时从下往上
        • type:设置渐变的类型
      • 编写矩形边框的Drawable:

 shape_bg.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    >
    <!-- 设置一个黑色边框 -->
    <stroke android:width="40px" android:color="#000000"/>
    <!-- 渐变 -->
    <gradient
        android:angle="270"
        android:endColor="#C0C0C0"
        android:startColor="#FCD209" />
    <!-- 设置一下边距,让空间大一点 -->
    <padding
        android:left="5dp"
        android:top="5dp"
        android:right="5dp"
        android:bottom="5dp"/>
</shape>

text_view.xml:

<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/Gridlayout1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:columnCount="4"
    android:orientation="horizontal"
    android:rowCount="6">

    <TextView
        android:id="@+id/textview"
        android:layout_width="300dp"
        android:layout_height="400dp"
        android:gravity="center"
        android:text="@string/app_name"
        android:textColor="@color/purple_200"
        android:textStyle="italic"
        android:textSize="20sp"
        android:background="@drawable/shape_bg"
        android:autoLink="web"
        />

</GridLayout>

 

        •       编写圆角矩形边框的Drawable

 shape_bg.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 设置透明背景色 -->
    <solid android:color="#87CEEB" />
    <!-- 设置一个黑色边框 -->
    <stroke
        android:width="40px"
        android:color="#000000" />
    <!-- 设置四个圆角的半径 -->
    <corners
        android:bottomLeftRadius="50px"
        android:bottomRightRadius="50px"
        android:topLeftRadius="50px"
        android:topRightRadius="50px" />
    <!-- 设置一下边距,让空间大一点 -->
    <padding
        android:bottom="5dp"
        android:left="5dp"
        android:right="5dp"
        android:top="5dp" />
</shape>

 

 

 text_view.xml同上。

  • 带图片(drawableXxx)的TextView

 

属性名

作用

android:drawableLeft

文本左边设置图片

android:drawableRight

文本右边设置图片

android:drawableBottom

文本下边设置图片

android:drawableTop

文本上边设置图片

 

    •   应用场景
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/Gridlayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:columnCount="4"
    android:orientation="horizontal"
    android:background="#fcfcfc">

    <TextView
        android:id="@+id/textview1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_columnWeight="1"
        android:gravity="center"
        android:text="微信"
        android:textSize="25sp"
        android:drawableTop="@mipmap/weixin"
        />
    <TextView
        android:id="@+id/textview2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_columnWeight="1"
        android:gravity="center"
        android:text="通讯录"
        android:textSize="25sp"
        android:drawableTop="@mipmap/tongxunlu"
        />
    <TextView
        android:id="@+id/textview3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_columnWeight="1"
        android:gravity="center"
        android:text="发现"
        android:textSize="25sp"
        android:drawableTop="@mipmap/faxian"
        />
    <TextView
        android:id="@+id/textview4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_columnWeight="1"
        android:gravity="center"
        android:text="我"
        android:textSize="25sp"
        android:textColor="#00CC00"
        android:drawableTop="@mipmap/wode"

        />

</GridLayout>

 

     

 

标签:xml,text,文本框,设置,Android,文本,android,TextView
From: https://www.cnblogs.com/lysboke/p/17255199.html

相关文章

  • 如何在Android Studio中创建自定义图标
    今天学习时发现了一个很棒的功能,那就是在AndroidStudio中创建自定义图标,我们在开发app时,常需要用到一些图标,我们当然可以去网上公共素材库找,但是大小什么的往往不尽......
  • C# 文本框只能输入数字
     代码如下:调用TextBox的KeyPress事件privatevoidtxtLoginId_KeyPress(objectsender,KeyPressEventArgse){//如果输入的不是数字键,也不是回车......
  • Android 一个美观简洁的登录界面
     效果图片 布局代码<?xmlversion="1.0"encoding="utf-8"?><!--登录界面,用LinearLayout--><LinearLayoutxmlns:android="http://schemas.android.com/......
  • Android 自定义View 之 Mac地址输入框
    Mac地址输入框前言正文一、什么是View?二、什么是自定义View三、自定义View①构造方法②XML样式③测量④绘制1.绘制方框2.绘制文字⑤输入1.键盘布局2.键盘接口3.......
  • Android Studio Gradle Sync issues问题
     当时重装系统,发现出了这个问题,展开发现JDK相关。 在csdn搜索,后将默认的更改为java用的8版本。    退出,重新进入,完成。第一次耗时很久,33分钟。后面再进就......
  • Android开发-Android常用布局
    3.1 线性布局-LinearLayoutLinearLayout是一个视图容器,用于使所有子视图在单个方向(垂直或水平)保持对齐。您可使用android:orientation属性指定布局方向。 andr......
  • Java中集成极光推送实现给Android提送消息通知(附代码下载)
    场景在上面Android中集成Jpush后,给所有Android设备推送消息以及通过别名给指定都是通过Jpush的开发者后台进行推送消息,如果在代码中怎样进行消息推送。注:关注公众号霸道的......
  • Android中使用EventBus事件发布/订阅框架实现事件传递
    场景EventBusEventBus是一种用于Android的事件发布-订阅总线。它简化了应用程序内各个组件之间进行通信的复杂度,尤其是碎片之间进行通信的问题,可以避免由于使用广播通信而带......
  • ArcGIS Runtime for Android 7 编译调试已有项目
    在前面的例子,我们已经了解了如何从头开始实现搭建运行环境,并使用ArcGISRuntimeforAndroid加载地图,今天,我们重点来分享如何打开并编译已有项目。测试环境官方的资料是......
  • Android Hybird架构之整合XwalkView,让你的App内置chromium内核
    使用XwalkView的目的无非是为了提升Android4.4以下版本(非chromium内核)的Html5渲染性能,并且能够使得H5页面在众多定制化的ROM上拥有一致的体验。当然了,App内置Chromuim内......