在Flutter中,我們可以使用Image控件來顯示圖片,一般來講我們的圖片資源都來源于網絡或者本地圖片。

創(chuàng)新互聯長期為1000+客戶提供的網站建設服務,團隊從業(yè)經驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯網生態(tài)環(huán)境。為冀州企業(yè)提供專業(yè)的成都網站制作、成都網站設計、外貿營銷網站建設,冀州網站改版等技術服務。擁有10多年豐富建站經驗和眾多成功案例,為您定制開發(fā)。
Flutter中的Image也是類似。
我們先來看看Image的構造方法
下面我們來看看其常用的屬性
可以看到,其常用屬性跟前端中的css很像。
下面我們來簡單用一用Image控件
首先是必填參數image,它接收一個ImageProvider類型的值。ImageProvider是一個抽象類,他下面有下圖這些實現類,由下面這些實現類可以看出,image是可以從資源,內存,網絡,和文件中獲取圖片。
我們先來試試加載網絡圖片
首先看看NetworkImage構造方法,很簡單,傳個url就可以了
如下:
嗯,就是這么簡單。其他3種情況使用也是類似的,自行看源碼即可。
實際上,Flutter給我們提供了擴展方法,使用起來更加簡單,通常我們直接使用提供的擴展方法即可
如下
可以看到,他們的構造方法基本類似。
所以我們也可以這樣寫,跟上面的效果是一致的。
大致分為一下幾步
1.創(chuàng)建一個文件夾,用于存放圖片,如圖,我創(chuàng)建了一個imgs的文件夾,放了一張圖片
2.在pubspec.yaml中聲明資源,注意聲明的時候路徑和前面的-是有間隔的,不然的話會報#/properties/flutter/properties/assets: type: wanted [array] got -imgs/code.png
類似的錯誤,聲明完成后點擊右上方的packages get
或
下面我們再來看看其他屬性。
width,height
寬高沒什么好說的,就是設置寬度和高度
配合color使用,用于設置顏色的混合模式。BlendMode是一個枚舉,他有很多值
詳細解析還是看官方文檔吧,值太多了,我們隨便用用
用于設置圖片的填充方式,當圖片本身小于設置的寬高或者比父控件的寬高小時,我們可以設置該屬性控制圖片的顯示。
其值的類型是BoxFit。是個枚舉
具體含義還是直接看文檔即可
設置圖片的對齊方式,接收一個Alignment類型的值,值如下,很好理解
為了方便看效果我們在外邊套了個Container,簡單的把它理解為一個容器布局就可以了,類似于html中的div或android中的Layout,我們給Container設置了寬高和背景顏色。
bottomLeft效果如下,其他的自行嘗試
相對于Image,ICON可以像web一樣使用字體圖標,并且可以使用矢量圖,無需擔心失真的問題,并且體積相對較小。
我們先來看看其構造方法
很簡單,我們直接來用一用
默認情況下,pubspec.yaml中uses-material-design的值為true.我們默認就可以使用Material Design字體圖標
在編寫幾個 Flutter 項目后,發(fā)現 Flutter 的強大之處在于業(yè)務中所有用到的控件以及場景都有對應的處理方案;而 Dart 語言也與 Java 、 Kotlin 類似,所以對 Android 開發(fā)者來說門檻非常低;特意記錄一下常用的控件及其使用:
StatelessWidget 不需要額外的創(chuàng)建 State
StatefulWidget 創(chuàng)建 State 類,并可以在其中保存一些狀態(tài)
only 可以單獨設置每個方向的內邊距
類似于 LinearLayout 中的 orientation 設置為 vertical , mainAxisAlignment 表示豎向的一個對齊方式, crossAxisAlignment 表示橫向的對齊方式
與 Column 相反,主軸是橫向,對齊方式類似, crossAxisAlignment 表示豎向的對齊方式
類似 SizedBox ,一個容器,但是主要功能是有一個 decoration —— 裝飾器,作用是繪制背景,或者使用 item 中的陰影
棧,先入后出,類似于 Android 上的 FrameLayout
通常配合 Stack 使用,固定顯示在某一個位置
配合多 child 使用,會填充剩余的空間
Image 功能強大,使用不同的方法可以加載不同來源的圖片
看到這些方法,突然覺得 Flutter 太香了,而且 Image 可以配置 clip 等裁剪出不同形狀的圖片,無論是圓形還是五角星都不在話下,然而 Android 要實現不規(guī)則的形狀,可是要下不少功夫的。
名字和 Android 的一模一樣,但是用法卻比 Android 的簡單很多:
主要就是 itemCount 與 itemBuilder ,其余就是配置樣式, itemBuilder 需要返回一個 widget ,當然了,每個 ListView 都有其對應的 item ,在里面的方法中編寫 widget 即可
與 ListView 類似,但是需要有一個 delegate 類,作用是設置有多少列,每一列之間的間距是多少
GridView 沒有 build , children 表示所有的子 view
最常用的控件之一,有非常多的樣式, Flutter 中通常是使用裝飾器來處理控件的,如背景使用 BoxDecoration , TextFiled 使用 InputDecoration ; 使用如下
1、單一樣式的文本 Text
2、多種混合樣式的文本 Text.rich
1、控件樣式定制
本文名稱:flutter圖片控件,Flutter組件
網站鏈接:http://chinadenli.net/article47/dsiggej.html
成都網站建設公司_創(chuàng)新互聯,為您提供網站設計、網站設計公司、ChatGPT、網站制作、外貿網站建設、定制開發(fā)
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯