在開(kāi)發(fā)中,文本是我們最常接觸的控件。這篇博客來(lái)分享一下 Flutter 中的 Text 文本組件,我們展示的文本都可以用這個(gè)組件來(lái)展示,希望看文章的小伙伴有所幫助。
為六枝等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及六枝網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、六枝網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
這樣我們就可以在界面當(dāng)中顯示一個(gè)文本,顯示是 Hello Flutter 。下面我們來(lái)說(shuō)說(shuō) Text 組件的屬性:
設(shè)置文本顏色:
設(shè)置文本大?。?/p>
設(shè)置文本樣式-加粗:
設(shè)置文本樣式-斜體:
設(shè)置文本位置:
TextAlign可選屬性: center 、 end 、 start 、 justify 、 left 、 right 。
設(shè)置文本高度:
設(shè)置文本最大行數(shù):
設(shè)置文本有下劃線:
設(shè)置文本有虛線類型下劃線:
設(shè)置文字間隔:
文本超過(guò)最大行數(shù)設(shè)置 ... :
Divider的構(gòu)造方法
可以看出Divider組件只有5個(gè)屬性,一目了然,使用也非常簡(jiǎn)單
indent: 起點(diǎn)縮進(jìn)距離
endIndent: 終點(diǎn)縮進(jìn)距離
color: 分割線顏色
height: 分割線區(qū)域的高度,并非分割線的高度
thickness: 分割線的厚度,真正的分割線的高度
注意:
1.當(dāng)height為null的時(shí)候會(huì)去查看 DividerThemeData.space的高度,如果同樣為null,則默認(rèn)分割線區(qū)間為16
2.如果不設(shè)置thickness的高度,分割線默認(rèn)為1px且居中顯示
3.如果想設(shè)置真實(shí)的分割線高度,需要把height和thickness設(shè)置為一樣高即可。
4.flutter還提供了豎直方向上的分割線組件VerticalDivider,用法一至,不在贅述。
Demo
在編寫幾個(gè) Flutter 項(xiàng)目后,發(fā)現(xiàn) Flutter 的強(qiáng)大之處在于業(yè)務(wù)中所有用到的控件以及場(chǎng)景都有對(duì)應(yīng)的處理方案;而 Dart 語(yǔ)言也與 Java 、 Kotlin 類似,所以對(duì) Android 開(kāi)發(fā)者來(lái)說(shuō)門檻非常低;特意記錄一下常用的控件及其使用:
StatelessWidget 不需要額外的創(chuàng)建 State
StatefulWidget 創(chuàng)建 State 類,并可以在其中保存一些狀態(tài)
only 可以單獨(dú)設(shè)置每個(gè)方向的內(nèi)邊距
類似于 LinearLayout 中的 orientation 設(shè)置為 vertical , mainAxisAlignment 表示豎向的一個(gè)對(duì)齊方式, crossAxisAlignment 表示橫向的對(duì)齊方式
與 Column 相反,主軸是橫向,對(duì)齊方式類似, crossAxisAlignment 表示豎向的對(duì)齊方式
類似 SizedBox ,一個(gè)容器,但是主要功能是有一個(gè) decoration —— 裝飾器,作用是繪制背景,或者使用 item 中的陰影
棧,先入后出,類似于 Android 上的 FrameLayout
通常配合 Stack 使用,固定顯示在某一個(gè)位置
配合多 child 使用,會(huì)填充剩余的空間
Image 功能強(qiáng)大,使用不同的方法可以加載不同來(lái)源的圖片
看到這些方法,突然覺(jué)得 Flutter 太香了,而且 Image 可以配置 clip 等裁剪出不同形狀的圖片,無(wú)論是圓形還是五角星都不在話下,然而 Android 要實(shí)現(xiàn)不規(guī)則的形狀,可是要下不少功夫的。
名字和 Android 的一模一樣,但是用法卻比 Android 的簡(jiǎn)單很多:
主要就是 itemCount 與 itemBuilder ,其余就是配置樣式, itemBuilder 需要返回一個(gè) widget ,當(dāng)然了,每個(gè) ListView 都有其對(duì)應(yīng)的 item ,在里面的方法中編寫 widget 即可
與 ListView 類似,但是需要有一個(gè) delegate 類,作用是設(shè)置有多少列,每一列之間的間距是多少
GridView 沒(méi)有 build , children 表示所有的子 view
最常用的控件之一,有非常多的樣式, Flutter 中通常是使用裝飾器來(lái)處理控件的,如背景使用 BoxDecoration , TextFiled 使用 InputDecoration ; 使用如下