คำถามติดแท็ก flutter-layout

11
จะเพิ่ม ListView ไปยังคอลัมน์ใน Flutter ได้อย่างไร?
ฉันกำลังพยายามสร้างหน้าเข้าสู่ระบบอย่างง่ายสำหรับแอป Flutter ของฉัน ฉันสร้าง TextFields และปุ่มล็อกอิน / ลงชื่อเข้าใช้สำเร็จแล้ว ฉันต้องการเพิ่ม ListView แนวนอน เมื่อฉันเรียกใช้โค้ดองค์ประกอบของฉันจะหายไปถ้าฉันทำโดยไม่มี ListView ก็ใช้ได้อีกครั้ง ฉันจะทำอย่างถูกต้องได้อย่างไร? return new MaterialApp( home: new Scaffold( appBar: new AppBar( title: new Text("Login / Signup"), ), body: new Container( child: new Center( child: new Column( mainAxisAlignment: MainAxisAlignment.center, children: <Widget>[ new TextField( decoration: new InputDecoration( hintText: "E …

13
แสดง / ซ่อนวิดเจ็ตใน Flutter โดยทางโปรแกรม
ใน Android ทุกViewคลาสย่อยจะมีsetVisibility()วิธีการที่ช่วยให้คุณแก้ไขการเปิดเผยของViewวัตถุได้ การตั้งค่าการมองเห็นมี 3 ตัวเลือก: มองเห็นได้: แสดงสิ่งที่Viewมองเห็นได้ภายในเค้าโครง ล่องหน: ซ่อนViewแต่ทิ้งช่องว่างที่เทียบเท่ากับสิ่งที่Viewจะครอบครองหากมองเห็นได้ หายไป: ซ่อนViewและลบทั้งหมดออกจากเค้าโครง ราวกับว่าเป็นheightและwidthเป็น0dp มีสิ่งที่เทียบเท่ากับข้างต้นสำหรับวิดเจ็ตใน Flutter หรือไม่? สำหรับข้อมูลอ้างอิงอย่างรวดเร็ว: https://developer.android.com/reference/android/view/View.html#attr_android:visibility

10
วิวพอร์ตแนวตั้งได้รับความสูงที่ไม่ถูกผูกไว้
นี่คือรหัสของฉัน: @override Widget build(BuildContext context) { return new Material( color: Colors.deepPurpleAccent, child: new Column( mainAxisAlignment: MainAxisAlignment.center, children:<Widget>[new GridView.count(crossAxisCount: _column,children: new List.generate(_row*_column, (index) { return new Center( child: new CellWidget() ); }),)] ) ); } ข้อยกเว้นดังนี้: I/flutter ( 9925): ══╡ EXCEPTION CAUGHT BY RENDERING LIBRARY ╞═════════════════════════════════════════════════════════ I/flutter ( 9925): The following …

13
Flutter - ตัดข้อความทับเช่นใส่จุดไข่ปลาหรือจาง
ฉันกำลังพยายามสร้างบรรทัดที่ข้อความตรงกลางมีขนาดสูงสุดและหากเนื้อหาข้อความใหญ่เกินไปแสดงว่ามีขนาดพอดี ฉันแทรกTextOverflow.ellipsisคุณสมบัติเพื่อย่อข้อความและแทรกจุดสามจุด...แต่มันไม่ทำงาน main.dart import 'package:flutter/material.dart'; void main() { runApp(new MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return new MaterialApp( home: new HomePage(), ); } } class HomePage extends StatelessWidget { @override Widget build(BuildContext context) => new Scaffold( appBar: new AppBar( backgroundColor: new Color(0xFF26C6DA), ), body: …

20
วิธีตั้งค่าความกว้างของ RaisedButton ใน Flutter
ฉันเห็นว่าฉันไม่สามารถกำหนดความกว้างของRaisedButtonFlutter ได้ ถ้าฉันเข้าใจดีฉันควรใส่RaisedButtonลงในไฟล์SizedBox. จากนั้นฉันจะสามารถกำหนดความกว้างหรือความสูงของกล่องได้ ถูกต้องหรือไม่ มีวิธีอื่นที่จะทำได้หรือไม่? การสร้างSizedBoxปุ่มทุกปุ่มค่อนข้างน่าเบื่อดังนั้นฉันจึงสงสัยว่าทำไมพวกเขาถึงเลือกที่จะทำแบบนี้ ฉันค่อนข้างแน่ใจว่าพวกเขามีเหตุผลที่ดีที่จะทำเช่นนั้น แต่ฉันไม่เห็น นั่งร้านนั้นค่อนข้างยากที่จะอ่านและสร้างขึ้นสำหรับผู้เริ่มต้น new SizedBox( width: 200.0, height: 100.0, child: new RaisedButton( child: new Text('Blabla blablablablablablabla bla bla bla'), onPressed: _onButtonPressed, ), ),

13
ภาพมุมโค้งมนใน Flutter
ฉันใช้ Flutter เพื่อสร้างรายการข้อมูลเกี่ยวกับภาพยนตร์ ตอนนี้ฉันต้องการให้ภาพปกทางด้านซ้ายเป็นภาพมุมมน ฉันทำสิ่งต่อไปนี้ แต่ไม่ได้ผล ขอบคุณ! getItem(var subject) { var row = Container( margin: EdgeInsets.all(8.0), child: Row( children: <Widget>[ Container( width: 100.0, height: 150.0, decoration: BoxDecoration( borderRadius: BorderRadius.all(Radius.circular(8.0)), color: Colors.redAccent, ), child: Image.network( subject['images']['large'], height: 150.0, width: 100.0, ), ), ], ), ); return Card( color: Colors.blueGrey, child: row, …

20
ความกว้างของปุ่มตรงกับระดับบนสุด
ฉันต้องการทราบว่าฉันจะตั้งค่าความกว้างให้ตรงกับความกว้างของโครงร่างหลักได้อย่างไร new Container( width: 200.0, padding: const EdgeInsets.only(top: 16.0), child: new RaisedButton( child: new Text( "Submit", style: new TextStyle( color: Colors.white, ) ), colorBrightness: Brightness.dark, onPressed: () { _loginAttempt(context); }, color: Colors.blue, ), ), ฉันรู้เกี่ยวกับExpandedวิดเจ็ตเล็กน้อยแต่Expandedขยายมุมมองไปยังทั้งสองทิศทางฉันไม่รู้วิธีทำ

14
ช่องว่างระหว่างลูก ๆ ของคอลัมน์ใน Flutter
ฉันมีColumnวิดเจ็ตสองอันTextFieldวิดเจ็ตเป็นลูก ๆ และฉันต้องการให้มีช่องว่างระหว่างทั้งสองอย่าง ฉันพยายามแล้วmainAxisAlignment: MainAxisAlignment.spaceAroundแต่ผลลัพธ์ไม่เป็นอย่างที่ฉันต้องการ

7
โดยทางโปรแกรมจะเลื่อนไปที่จุดสิ้นสุดของ ListView
ฉันมีตัวเลื่อนListViewซึ่งจำนวนรายการสามารถเปลี่ยนแปลงได้แบบไดนามิก เมื่อใดก็ตามที่มีการเพิ่มรายการใหม่ในตอนท้ายของรายการฉันต้องการเลื่อนListViewไปยังจุดสิ้นสุดโดยใช้โปรแกรม (เช่นรายการข้อความแชทที่สามารถเพิ่มข้อความใหม่ได้ในตอนท้าย) ฉันเดาว่าฉันจะต้องสร้างScrollControllerในStateวัตถุของฉันและส่งต่อไปยังตัวListViewสร้างด้วยตนเองดังนั้นฉันจึงสามารถเรียกanimateTo()/ jumpTo()method บนคอนโทรลเลอร์ได้ในภายหลัง อย่างไรก็ตามเนื่องจากฉันไม่สามารถกำหนดออฟเซ็ตการเลื่อนสูงสุดได้อย่างง่ายดายดูเหมือนว่าจะเป็นไปไม่ได้ที่จะดำเนินการเพียงscrollToEnd()ประเภทเดียว (ในขณะที่ฉันสามารถผ่านได้อย่างง่ายดาย0.0เพื่อให้เลื่อนไปที่ตำแหน่งเริ่มต้น) มีวิธีง่ายๆในการบรรลุเป้าหมายนี้หรือไม่? การใช้reverse: trueไม่ใช่วิธีแก้ปัญหาที่สมบูรณ์แบบสำหรับฉันเพราะฉันต้องการให้รายการจัดตำแหน่งที่ด้านบนเมื่อมีรายการเพียงเล็กน้อยที่พอดีกับListViewวิวพอร์ต

13
InkWell ไม่แสดงผลกระเพื่อม
การแตะที่คอนเทนเนอร์จะเรียกonTap()ตัวจัดการ แต่ไม่แสดงเอฟเฟกต์การสาดหมึก class _MyHomePageState extends State<MyHomePage> { @override Widget build(BuildContext context) { return new Scaffold( appBar: new AppBar( title: new Text(widget.title), ), body: new Center( child: new InkWell( onTap: (){print("tapped");}, child: new Container( width: 100.0, height: 100.0, color: Colors.orange, ), ), ), ); } } ฉันพยายามใส่InkWellด้านในContainerด้วย แต่ก็ไร้ผล

4
Flutter จัดตำแหน่งสองรายการให้สุดขั้ว - หนึ่งรายการทางซ้ายและอีกชิ้นทางขวา
ฉันกำลังพยายามจัดตำแหน่งสองรายการให้สุดขั้วหนึ่งทางซ้ายและอีกรายการทางขวา ฉันมีหนึ่งแถวที่จัดชิดซ้ายแล้วลูกของแถวนั้นจัดชิดขวา อย่างไรก็ตามดูเหมือนว่าแถวลูกกำลังรับคุณสมบัติการจัดตำแหน่งจากพาเรนต์ นี่คือรหัสของฉัน var SettingsRow = new Row( mainAxisAlignment: MainAxisAlignment.end, crossAxisAlignment: CrossAxisAlignment.center, mainAxisSize: MainAxisSize.max, children: <Widget>[ Text("Right",softWrap: true,), ], ); var nameRow = new Row( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.center, mainAxisSize: MainAxisSize.max, children: <Widget>[ Text("Left"), SettingsRow, ], ); เป็นผลให้ฉันได้รับสิ่งนี้ Left Right สิ่งที่ฉันต้องการคือ Left Right นอกจากนี้ยังมีพื้นที่ว่างเพียงพอบน Row คำถามของฉันคือเหตุใดแถวเด็กจึงไม่แสดงMainAxisAlignment.endทรัพย์สิน

1
วิธีใช้ CustomMultiChildLayout & CustomSingleChildLayout ใน Flutter
คนที่มีประสบการณ์ในการใช้CustomSingleChildLayoutและCustomMultiChildLayoutชั้นเรียนสามารถอธิบายรายละเอียด (พร้อมตัวอย่าง) ในวิธีการใช้งานได้หรือไม่ ฉันยังใหม่กับ Flutter และพยายามเข้าใจวิธีใช้สิ่งเหล่านี้ อย่างไรก็ตามเอกสารน่ากลัวและไม่ชัดเจน ฉันพยายามกลั้วอินเทอร์เน็ตเพื่อเป็นตัวอย่าง แต่ไม่มีเอกสารอื่นใด ฉันจะขอบคุณตลอดไปหากคุณสามารถช่วยได้ ขอบคุณ!

1
Listview ข้างใน DraggableScrollableSheet ไม่ได้เลื่อนเป็น flutter
ฉันออกแบบการออกแบบซ้อนกันอย่างหนักเช่นด้านล่างปัญหาเมื่อรายการของฉันขยาย listview ดูเหมือนจะไม่เลื่อนสิ่งที่เป็นสาเหตุของสิ่งนี้แผ่นด้านล่างได้รับการขยาย แต่ไม่มีความสำคัญใน listview ภายในถ้าฉันเลื่อนตาม การแตะที่ข้อความ 'เวลาทำการ' มันจะเริ่มเลื่อน แต่เมื่อเลื่อนขึ้นไปข้างบนฉันไม่สามารถเลื่อนลงได้ _showDialog(BuildContext context) { print("_showDialog"); showModalBottomSheet( context: context, isScrollControlled: true, builder: (BuildContext context) { return DraggableScrollableSheet( expand: false, builder: (context, scrollController) { return Container( child: Stack( children: <Widget>[ Column( crossAxisAlignment: CrossAxisAlignment.start, children: <Widget>[ Align( alignment: Alignment.topCenter, child: Container( margin: EdgeInsets.symmetric(vertical: 8), …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.