Flutter 中的 Row 小部件:全面指南

Flutter 中的 Row 小部件:全面指南

在 Flutter 中,Row 是一個水平布局的小部件,用于將子控件沿著水平軸排列。Row 類似于 HTML 中的 div 標簽,但僅限于水平布局。它非常適合用來創建行式布局,如表單輸入、按鈕組、標簽欄等。

基礎用法

Row 最基本的用法是將多個控件水平排列:

Row(children: <Widget>[Container(width: 50.0, height: 50.0, color: Colors.red),Container(width: 50.0, height: 50.0, color: Colors.blue),// ... 更多的控件],
)

主軸對齊

RowmainAxisAlignment 屬性用于控制子控件在主軸(水平軸)上的對齊方式:

開始對齊

Row(mainAxisAlignment: MainAxisAlignment.start,// ... 子控件
)

居中對齊

Row(mainAxisAlignment: MainAxisAlignment.center,// ... 子控件
)

兩端對齊

Row(mainAxisAlignment: MainAxisAlignment.spaceBetween,// ... 子控件
)

均勻分布

Row(mainAxisAlignment: MainAxisAlignment.spaceEvenly,// ... 子控件
)

交叉軸對齊

RowcrossAxisAlignment 屬性用于控制子控件在交叉軸(垂直軸)上的對齊方式:

Row(crossAxisAlignment: CrossAxisAlignment.center,// ... 子控件
)

間距和邊距

RowmainAxisSize 屬性決定了 Row 的大小是否應該占據所有可用空間:

Row(mainAxisSize: MainAxisSize.min,// ... 子控件
)

通過 padding 屬性,可以為 Row 添加內邊距:

Row(padding: EdgeInsets.all(8.0),// ... 子控件
)

子控件間距

使用 spacing 屬性來設置子控件之間的水平間距:

Row(spacing: 10.0,children: List<Widget>.generate(5, (index) {return Container(width: 50.0, height: 50.0, color: Colors.primaries[index % Colors.primaries.length]);}).toList(),
)

子控件大小調整

使用 flex 屬性來設置子控件在 Row 中的彈性比例:

Row(children: <Widget>[Expanded(flex: 1,child: Container(color: Colors.red),),Expanded(flex: 2,child: Container(color: Colors.blue),),],
)

實例:水平表單

下面是一個使用 Row 創建水平表單的實例:

Row(children: <Widget>[Expanded(child: TextField(decoration: InputDecoration(labelText: 'Username',border: OutlineInputBorder(),),),),SizedBox(width: 16.0),Expanded(child: TextField(decoration: InputDecoration(labelText: 'Password',border: OutlineInputBorder(),),obscureText: true,),),],
)

實例:按鈕組

使用 Row 創建一組水平排列的按鈕:

Row(mainAxisAlignment: MainAxisAlignment.center,children: <Widget>[ElevatedButton(onPressed: () {},child: Text('Button 1'),),ElevatedButton(onPressed: () {},child: Text('Button 2'),),ElevatedButton(onPressed: () {},child: Text('Button 3'),),],
)

結語

Row 是 Flutter 中處理水平布局的核心小部件,它提供了豐富的對齊和間距選項,使得在 Flutter 應用中實現各種水平布局變得簡單而高效。掌握 Row 的使用,可以幫助你創建出既美觀又實用的布局界面。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/11073.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/11073.shtml
英文地址,請注明出處:http://en.pswp.cn/web/11073.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【linux軟件基礎知識】完全公平調度

完全公平調度&#xff08;CFS&#xff09; CFS根據每個進程相對于所有可運行線程總權重的權重為每個進程分配一個“時間片”。 CFS 的目標是近似“無限小”的調度持續時間&#xff0c;稱為目標延遲。 較小的目標延遲可以提高交互性并接近完美的多任務處理&#xff0c;但其代價…

【Linux網絡】Https【下】{CA認證/證書的簽發與認證/安全性/總結}

文章目錄 1.引入證書【為方案五鋪墊】1.1再談https1.2SSL/TLS1.3CA機構1.4理解數字簽名1.4繼續鋪墊1.5方案五服務端申請證書回顧一二三回顧方案四方案五過程尋找方案五的漏洞客?端對證書進?認證 2.查看證書2.1查看瀏覽器的受信任證書發布機構2.2中間?有沒有可能篡改該證書2.…

差分約束 C++ 算法例題

差分約束 差分約束 是一種特殊的 n 元一次不等式組&#xff0c;m 個約束條件&#xff0c;可以組成形如下的格式&#xff1a; { x 1 ? x 1 ′ ≤ y 1 x 2 ? x 2 ′ ≤ y 2 ? x m ? x m ′ ≤ y m \begin{cases} x_1-x_1^{} \le y_1 \\ x_2-x_2^{} \le y_2 \\ \cdots \\ x_…

數據庫的要求

本來我是不準備寫數據庫的。而且是準備從零開始&#xff0c;學習python&#xff0c;學完語言學&#xff0c;會c和寫作技法&#xff0c;再來學習數據庫 那樣做的復雜度是天量的&#xff0c;按部就班什么的具備&#xff0c;因為你完全不清楚什么時候就有這個基礎和條件&#xff0…

【53】Camunda8-Zeebe核心引擎-Partitions分區與Internal processing內部處理

Partitions分區 在Zeebe中,所有數據都是基于分區的。(一個)分區本質上是一個關于流程事件的持久化流。在broker集群中,分區分布在節點之間,因此可以將其視為分片。啟動/初始化Zeebe 集群時,用戶可以配置所需的分區數。如果使用過Kafka,這部分內容是比較相似的。 每當部…

SpringBoot集成jxls2實現復雜(多表格)excel導出

核心依賴 需求 導出多個表格&#xff0c;包含圖片&#xff0c;類似商品標簽 1.配置模板 創建一個xlsx的模板文件&#xff0c;配置如下 該模板進行遍歷了兩次&#xff0c;因為我想要導出的數據分為兩列展示&#xff0c;左右布局&#xff0c;一個循環實現不了&#xff0c;所以采…

【ARM64 常見匯編指令學習 20.1 -- ARM 偽指令 .include】

請閱讀【嵌入式開發學習必備專欄】 文章目錄 ARM 編譯指令 .include 使用介紹a.s 文件b.s 文件小結 ARM 編譯指令 .include 使用介紹 在UEFI&#xff08;統一可擴展固件接口&#xff09;開發中&#xff0c;通常會用到匯編語言文件&#xff08;.s 或 .S 文件&#xff09;。如果…

百面算法工程師 | 正則優化函數——BN、LN、Dropout

本文給大家帶來的百面算法工程師是正則優化函數&#xff0c;文章內總結了常見的提問問題&#xff0c;旨在為廣大學子模擬出更貼合實際的面試問答場景。在這篇文章中&#xff0c;我們將總結一些BN、LN、Dropout的相關知識&#xff0c;并提供參考的回答及其理論基礎&#xff0c;以…

Linux kbdconfig命令教程:鍵盤設置與配置(附案例詳解和注意事項)

Linux kbdconfig命令介紹 kbdconfig&#xff08;鍵盤配置&#xff09;是一個用于設置鍵盤類型的程序&#xff0c;提供圖形化的操作界面。kbdconfig實際上是修改/etc/sysconfig/keyboard的鍵盤配置文件。 Linux kbdconfig命令適用的Linux版本 kbdconfig命令主要在Red Hat Lin…

電商秒殺系統-案例04-redis下的session控制

前言&#xff1a; 在現代的Web應用中&#xff0c;安全和高效的用戶身份驗證機制是至關重要的。本文將深入探討基于令牌的用戶登錄會話機制&#xff0c;特別是在使用Redis進行會話管理的情景。通過這一案例實戰&#xff0c;我們將了解令牌如何在用戶身份驗證過程中發揮核心作用&…

Linux dircolors命令教程:如何設置ls命令的顏色方案(附案例詳解和注意事項)

Linux dircolors命令介紹 dircolors命令在Linux中用于設置ls命令顯示文件和目錄的顏色方案。它可以輸出設置LS_COLORS環境變量的命令。 Linux dircolors命令適用的Linux版本 dircolors命令在大多數Linux發行版中都可用&#xff0c;包括Debian、Ubuntu、Alpine、Arch Linux、…

C++ | Leetcode C++題解之第85題最大矩形

題目&#xff1a; 題解&#xff1a; class Solution { public:int maximalRectangle(vector<vector<char>>& matrix) {int m matrix.size();if (m 0) {return 0;}int n matrix[0].size();vector<vector<int>> left(m, vector<int>(n, 0)…

【HCIP學習】BGP對等體組、聚合、路由反射器、聯盟、團體屬性

一、大規模BGP網絡所遇到的問題 BGP對等體眾多&#xff0c;配置繁瑣&#xff0c;維護管理難度大 BGP路由表龐大&#xff0c;對設備性能提出挑戰 IBGP全連接&#xff0c;應用和管理BGP難度增加&#xff0c;鄰居數量過多 路由變化頻繁&#xff0c;導致路由更新頻繁 二、解決大…

使用QT-QSqlQuery::value()遇到的問題

在實現客戶端間好友添加功能時&#xff0c;我通過以下函數想實現數據庫對好友信息的保存 bool OpeDB::handleAddFriend_repound(const char *pername, const char *name) { // pername 被添加方 name 申請添加方 qDebug() << pername << " " &l…

Nginx(簡潔版)

基本配置 worker_processes 1; //默認為1&#xff0c;表示開啟一個業務進程 events //事件驅動模塊&#xff08;&#xff09;{worker_connections 1024; //單個業務進程可接受連接數 } http{include mime.types; // 引入http mime類型&#xff08;在外部已經定義好&#xff0c…

Java數組——冒泡排序

冒泡排序是最出名的排序算法之一&#xff0c;總共有八大排序。 冒泡排序代碼并不復雜&#xff0c;共兩層循環&#xff0c;外層冒泡輪數&#xff0c;里層依次比較。 算法步驟&#xff1a; 1. 比較數組中兩個相鄰元素&#xff0c;如果第一個元素比第二個元素大&#xff0c;交換…

如何在huggingface上申請下載使用llama2/3模型

1. 在對應模型的huggingface頁面上提交申請 搜索對應的模型型號 登錄huggingface&#xff0c;在模型詳情頁面上&#xff0c;找到這個表單&#xff0c;填寫內容&#xff0c;提交申請。需要使用梯子&#xff0c;country填寫梯子的位置吧(比如美國&#xff09; 等待一小時左右…

SEMI啟動SiC專有技術項目

公司鄭重聲明&#xff0c;其正致力于篩選那些能夠穩定輸出、且可重復使用的關鍵參數性能。SEMI&#xff0c;這家SiC領域的佼佼者&#xff0c;已經啟動了一項獨具匠心的專有技術&#xff08;KGD&#xff09;篩選程序。該程序旨在為客戶提供高品質的、經過嚴格電氣分類與光學檢驗…

基于python的旅游爬蟲可視化與實現

摘要 本項目為基于python的旅游爬蟲可視化的設計與實現&#xff0c;項目以Web系統形式展示&#xff0c;利用Xpath爬蟲爬取去哪兒網針對旅游業的需求&#xff0c;對國內熱門旅游景點數據可視化系統&#xff0c;將爬取好的數據保存為CSV文件&#xff0c;再通過ORM框架導入MySQL數…

Python圖形界面(GUI)Tkinter筆記(五):控件的定位(3)

Tkinter(GUI)設計圖形界面時有三種控件的包裝方法去定位各控件在窗口(父容器、根窗口)上的位置。 【1】pack()方法:用方位來定位位置,類似于Word文檔中的文字對齊方式。 【2】grid()方法:用二維表格式的坐標值定位,類似于EXCEL單元格坐標。 【3】place()方法:用窗口…