在Android項(xiàng)目中常常會有需要TextView顯示很長文本的時候,這時候TextView的換行策略就成了一大問題,但是如何使TextView執(zhí)行自己想要的換行效果呢。TextView的屬性中有幾點(diǎn)是可以起到作用的。
我們提供的服務(wù)有:成都網(wǎng)站制作、成都網(wǎng)站設(shè)計、外貿(mào)營銷網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、靈山ssl等。為數(shù)千家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的靈山網(wǎng)站制作公司(1).正常顯示
xml代碼
顯示結(jié)果
可以看到這句話占了3行,并且是由系統(tǒng)自己判斷一行的剩余寬度能否再放下一個字符進(jìn)行換行的。
(2).使用singleLine屬性
xml代碼
顯示結(jié)果
可以看到這時不管有多長的一段話都會在一行內(nèi)顯示出來,超過一行的部分使用...表示。
那若這時顯示的字?jǐn)?shù)不足一行時會怎么樣呢。
xml代碼
顯示結(jié)果
這時并不會出現(xiàn)...的情況。
若想嚴(yán)格控制TextView的行數(shù)在一行之內(nèi)的可以使用這一屬性。
(3).使用lines屬性
實(shí)際行數(shù)3>lines屬性值2
xml代碼
顯示結(jié)果
這次加了一個lines的屬性,控制顯示的行數(shù)為2,可以看到,顯示的行數(shù)確實(shí)是2行,但是超出部分并不會如singLine那樣有...的提示,
并且這個屬性還有一個局限處,下面來看看,我們已經(jīng)知道正常顯示時是3行,可如果我們把lines的屬性值定為5會如何呢
實(shí)際行數(shù)3
xml代碼
顯示結(jié)果
為了顯示明顯,這次在TextView上加上了背景色,可以看出來,不管這些文本實(shí)際占了多少行,都會按照lines給出的數(shù)值去占位。
若不能確定這些文本究竟占了多少行,不要輕易使用lines屬性,若要使用,則這個值宜小不宜大。
(3).使用maxLines屬性
實(shí)際行數(shù)3<大行數(shù)5
xml代碼
顯示結(jié)果
設(shè)置了大行數(shù)為5行,但是這個屬性會根據(jù)實(shí)際顯示進(jìn)行縮減,僅顯示實(shí)際內(nèi)容所占的行數(shù)。
若實(shí)際行數(shù)3>大行數(shù)2的情況呢?
xml代碼
顯示結(jié)果
可以看到顯示結(jié)果很好的執(zhí)行了我們設(shè)置的大行數(shù)屬性,只顯示出了兩行,雖然也沒有如singLine一樣給出...的還有內(nèi)容的提示。
個人認(rèn)為這是對于控制多行顯示中最好的方式。
(4).自主控制換行
若內(nèi)容自己知道,并且需要自行決定在什么位置換行,可以常用在文本中添加"\n"的方式進(jìn)行換行
xml代碼
顯示結(jié)果
這樣實(shí)現(xiàn)了自己決定何時換行。
綜上所述,
(1).對于文本內(nèi)容未知的情況,想要控制行數(shù)并可以最優(yōu)的顯示出文本內(nèi)容,當(dāng)采用maxLines屬性。
(2).對于文本內(nèi)容已知的情況,直接使用"\n"進(jìn)行手動換行即可。
(3).以上的兩種情況,只想單行顯示時,采用singLine屬性為最佳。
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。