【入門篇】Android學習筆記——TextView

来源:http://www.cnblogs.com/wisekingokok/archive/2016/03/07/5250938.html
-Advertisement-
Play Games

要問Android開發中最常用的控制項是哪一個,那一定非TextView莫屬,TextView作為Android最常用的文字顯示控制項,具有簡易並且強大的特性。 首先通過一個示例看一看TextView的使用簡單到了一個什麼樣的程度,如下麵代碼……


要問Android開發中最常用的控制項是哪一個,那一定非TextView莫屬,TextView作為Android最常用的文字顯示控制項,具有簡易並且強大的特性。

首先通過一個示例看一看TextView的使用簡單到了一個什麼樣的程度,如下麵代碼所示:

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Hello world"/>

僅僅三行代碼,即可完成文字的顯示。其中:

android:layout_width:表示TextView的寬度和容器控制項一致,如果控制項內內容無法再一行內顯示,將自動換行。

android:layout_width:表示TextView的高度取決於控制項內的內容,如果內容比較多,則自動擴大高度,已便完整顯示內容。

android:text:表示TextView的內容。

TextView的顯示效果可以參看《【入門篇】Android學習筆記——Hello World》

通過上面的示例,可以看出使用TextView是一件非常容易而且簡單的事兒,但是TextView本身並不簡陋,它提供了多種屬性,可以實現更為豐富的效果。下麵將一一列舉TextView中常用的一些屬性:

  • android:autoLink —— 自動連接屬性,可以文本內容為URL,email,電話號碼時,可以自動調用相應的應用打開文本內容,如文本內容為:http://www.google.com,並且設置android:autoLink=“web”時,點擊此TextView可以自動調用瀏覽器,打開網站。此屬性可選值有以下幾種,當需要處理多種內容時,使用“|”符號鏈接:
    • none:預設為none,不進行任何處理。
    • web:處理包含URL的文本內容。
    • email:處理包含郵箱地址的文本內容。
    • phone:處理包含電話號碼的文本內容。
    • map:處理包含地圖數據的文本內容
    • all:處理包含email,phone,map或web的文本內容。
  • android:drawableBottom —— 底部圖片,TextView並不是只能顯示文字,它也可以在控制項中顯示圖片,此屬性表示的圖片將顯示在文本內容的正下方中部。
  • android:drawableLeft —— 左側圖片,類似android:drawableBottom,顯示圖片在文本內容的左側。
  • android:drawableRight —— 右側圖片。
  • android:drawableTop —— 頂部圖片。
  • android:drawablePadding —— 控制項內圖片與文字的距離。
  • android:ellipsize —— 文本省略,用於設置當文本內容超長時的處理邏輯。可選值有:
    • start:省略號顯示在文本開頭,如:“…習筆記——TextView”
    • end:省略號顯示在文本末尾,如:“【入門篇】Android學…”
    • middle:省略號顯示在文本中間,如:“【入門篇】Andro…tView”
    • marquee:以跑馬燈的方式顯示,此種方式,TextView需要獲得焦點。
  • android:gravity —— 文本對其方式。常用可選值如下:(更多可選值,請查閱Android API)
    • left: 居左對齊。
    • right:居右對齊。
    • top:頂部對齊。
    • bottom:底部對齊。
    • center:居中對齊。
  • android:ems —— 設置TextView的寬度為N個EM寬度。EM的含義是表示一個印刷排版的單位,em字面意思為:equal M,也就是說這個寬度等於M字元的寬度。並不是嚴格意義上的漢字寬度。
  • android:inputType —— 設置文本類型,如設置為“textpassword”,將以暗文方式顯示文本內容(更多可選值,請查閱Android API)。
  • android:maxEms —— 設置TextView的寬度最長為N個EM寬度,此屬性會覆蓋android:ems屬性。
  • android:minEms —— 設置TextView的寬度最短為N個EM寬度,此屬性會覆蓋android:ems屬性。
  • android:maxLength —— 設置TextView的最大文本長度,超出部分不顯示,無論中文或英文,每一個字元和漢字,長度都為1。
  • android:lines —— 設置TextView的行數。
  • android:maxLines —— 設置TextView的最大行數。
  • android:minLines —— 設置TextView的最小行數。
  • android:lineSpacingExtra —— 設置TextView的行間距。
  • android:lineSpacingMultiplier —— 按倍數設置TextView的行間距。
  • android:singleLine —— 設置文本是否僅僅單行顯示,為true只顯示單行。
  • android:text —— 設置文本內容。
  • android:textAppearance —— 設置文本外觀。
  • android:textColor —— 設置文本顏色。
  • android:textColorLink —— 設置文本鏈接的顏色
  • android:textSize —— 設置文本字形。

下麵演示一個代碼範例:

<TextView android:id="@+id/tv"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:autoLink="all"
    android:drawableBottom="@mipmap/ic_launcher"
    android:drawableLeft="@mipmap/ic_launcher"
    android:drawablePadding="10dp"
    android:drawableRight="@mipmap/ic_launcher"
    android:drawableTop="@mipmap/ic_launcher"
    android:background="#a0a0a0"
    android:ellipsize="end"
    android:padding="12dp"
    android:gravity="center"
    android:textColor="#ff0000"
    android:text="Hello world, http://lyjbk.com"
    android:textColorLink="#0000ff"/>

運行效果如下:

 

 

 

 

 

歡迎轉載,轉載同時請尊重版權,附上本文原文鏈接:點擊這裡

 

 

==============================

 更多內容,歡迎查看本人博客:林彥君的博客

==============================

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 前言:本隨筆將對IOS開發的支付功能進行一個概述。 內容大綱: 一、常見的支付方案簡介 二、第三方支付SDK 三、蘋果官方支付方案 四、Web支付方案 正文: 一、常見的支付方案簡介 在微信支付中 微信支付的網址是: https://pay.weixin.qq.com/wiki/doc/api/in
  • ViewController.h #import "ViewController.h" @interface ViewController () @property(strong,nonatomic)UIImageView *beijing; @property(strong,nonatomic)
  • 1.新建一個類(.java 文件),繼承Android.app.Activity 2.新建一個activity 文件 3.重寫onCreate 方法,設置綁定activity 文件 @Override protected void onCreate(Bundle savedInstanceState
  • 如何做一名優秀的android面試官? 如何做一名優秀的android候選者? 提到這個問題我不得不提起我們小升初,初升高,高生升本這幾個歷程中我們與出題人之間的無硝煙的戰爭。我們總是為自己的成績擔心,難道現在走向社會了這個情況不見了嗎?很顯然,並沒有。那就是我們要面對的HR,這個群體負責在我們入職
  • RoboGuice是什麼? 一個Android上的依賴註入框架。 依賴註入是什麼? 從字面理解,這個框架做了兩件事情,第一是去除依賴,第二是註入依賴。簡單理解就是,將對象的初始化委托給一個容器控制器,即去除依賴,再從容器控制器中構建依賴,註入回原本的對象中,即註入依賴。 依賴註入的好處是對象不需要在
  • 現在我在做對於我們公司項目的維護,我的總體任務是 (1)拓展新功能 (2)解決bug和提升性能 (3)提高代碼的質量,主要是可維護性和可拓展性
  • 根據上一篇寫的是實現了通過url介面將介面中的數據顯示出來,這次根據上一篇的基礎,進一步說明一下AsynTask的使用。 AsynTask類有幾個函數是大家必須知道的。 doInBackGround() onPreExecute() onPostExecute() onProgressUpdate(
  • 原文出處: 安卓弟(@_安卓弟) 在Android中,JSBridge已經不是什麼新鮮的事物了,各家的實現方式也略有差異。大多數人都知道WebView存在一個漏洞,見WebView中介面隱患與手機掛馬利用,雖然該漏洞已經在Android 4.2上修複了,即使用@JavascriptInterface
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...