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

Flutter เป็นชุดเครื่องมือ UI ของ Google สำหรับสร้างแอปพลิเคชันที่รวบรวมไว้สำหรับมือถือเว็บและเดสก์ท็อปจากรหัสฐานเดียว

9
Flutter SDK Set ภาพพื้นหลัง
ฉันกำลังพยายามตั้งค่าภาพพื้นหลังสำหรับโฮมเพจ ฉันได้รับตำแหน่งของภาพตั้งแต่เริ่มต้นหน้าจอและกรอกความกว้าง แต่ไม่ใช่ความสูง รหัสของฉันหายไปหรือเปล่า มีมาตรฐานภาพสำหรับการกระพือปีกหรือไม่? ภาพปรับขนาดตามความละเอียดหน้าจอของโทรศัพท์แต่ละเครื่องหรือไม่ class BaseLayout extends StatelessWidget{ @override Widget build(BuildContext context){ return new Scaffold( body: new Container( child: new Column( mainAxisAlignment: MainAxisAlignment.start, children: [ new Image.asset("assets/images/bulb.jpg") ] ) ) ); } }
122 dart  flutter 

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ขยายมุมมองไปยังทั้งสองทิศทางฉันไม่รู้วิธีทำ

4
การส่งผ่านข้อมูลไปยังวิดเจ็ตสถานะ
ฉันสงสัยว่าวิธีที่แนะนำในการส่งผ่านข้อมูลไปยังวิดเจ็ตที่มีสถานะเป็นอย่างไรในขณะที่สร้างมันคืออะไร สองสไตล์ที่ฉันเคยเห็นคือ: class ServerInfo extends StatefulWidget { Server _server; ServerInfo(Server server) { this._server = server; } @override State<StatefulWidget> createState() => new _ServerInfoState(_server); } class _ServerInfoState extends State<ServerInfo> { Server _server; _ServerInfoState(Server server) { this._server = server; } } วิธีนี้จะเก็บค่าทั้งในServerInfoและ_ServerInfoStateซึ่งดูเหมือนจะสิ้นเปลืองไปหน่อย วิธีอื่นคือการใช้widget._server: class ServerInfo extends StatefulWidget { Server _server; ServerInfo(Server server) { …
120 dart  flutter 

7
Flutter: วิธีสร้าง TextField ด้วย HintText แต่ไม่มีขีดเส้นใต้?
นี่คือสิ่งที่ฉันพยายามทำ: ในเอกสาร Flutter สำหรับช่องข้อความ ( https://flutter.io/text-input/ ) ระบุว่าคุณสามารถลบขีดเส้นใต้ได้โดยส่งผ่านnullไปยังส่วนตกแต่ง อย่างไรก็ตามนั่นยังกำจัดข้อความคำใบ้ ฉันไม่ต้องการขีดเส้นใต้ว่าช่องข้อความถูกโฟกัสหรือไม่ อัปเดต:อัปเดตคำตอบที่ยอมรับเพื่อสะท้อนการเปลี่ยนแปลงใน Flutter SDK ณ เดือนเมษายน 2020
120 flutter 


9
ฉันจะจัดข้อความให้อยู่กึ่งกลางในแนวตั้งและแนวนอนใน Flutter ได้อย่างไร
ฉันต้องการทราบวิธีจัดกึ่งกลางเนื้อหาของวิดเจ็ตข้อความในแนวตั้งและแนวนอนใน Flutter ฉันรู้เพียงวิธีจัดศูนย์กลางวิดเจ็ตโดยใช้Center(child: Text("test"))แต่ไม่ใช่เนื้อหา โดยค่าเริ่มต้นจะจัดชิดซ้าย ใน Android ผมเชื่อว่าทรัพย์สินของ TextView gravityที่ประสบความสำเร็จนี้จะเรียกว่า ตัวอย่างสิ่งที่ฉันต้องการ:

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

8
ฉันจะปิดการใช้งานปุ่มใน Flutter ได้อย่างไร?
ฉันเพิ่งจะเริ่มใช้งาน Flutter แต่ฉันมีปัญหาในการหาวิธีตั้งค่าสถานะที่เปิดใช้งานของปุ่ม จากเอกสารระบุว่าให้ตั้งค่าonPressedเป็น null เพื่อปิดใช้งานปุ่มและให้ค่าเพื่อเปิดใช้งาน ซึ่งใช้ได้ดีหากปุ่มยังคงอยู่ในสถานะเดิมตลอดอายุการใช้งาน ฉันได้รับความประทับใจที่ต้องสร้างวิดเจ็ต Stateful ที่กำหนดเองซึ่งจะช่วยให้ฉันสามารถอัปเดตสถานะที่เปิดใช้งานของปุ่ม (หรือการโทรกลับ onPressed) อย่างใด คำถามของฉันคือฉันจะทำอย่างไร? ดูเหมือนจะเป็นข้อกำหนดที่ค่อนข้างตรงไปตรงมา แต่ฉันไม่พบสิ่งใดในเอกสารเกี่ยวกับวิธีการทำ ขอบคุณ.
116 button  dart  flutter 

9
วิธีจัดรูปแบบ DateTime ใน Flutter วิธีรับเวลาปัจจุบันใน Flutter
ฉันพยายามแสดงกระแสDateTimeในTextวิดเจ็ตหลังจากแตะที่ปุ่ม ต่อไปนี้ใช้งานได้ แต่ฉันต้องการเปลี่ยนรูปแบบ แนวทางปัจจุบัน DateTime now = DateTime.now(); currentTime = new DateTime(now.year, now.month, now.day, now.hour, now.minute); Text('$currentTime'), ผลลัพธ์ YYYY-MM-JJ HH-MM:00.000 คำถาม ฉันจะเอาชิ้น:00.000ส่วนออกได้อย่างไร?
115 datetime  flutter  dart 


10
เมื่อแป้นพิมพ์ปรากฏขึ้นวิดเจ็ต Flutter จะปรับขนาด วิธีการป้องกันนี้?
ฉันมีคอลัมน์วิดเจ็ตแบบขยายดังนี้: return new Container( child: new Column( crossAxisAlignment: CrossAxisAlignment.stretch, children: <Widget>[ new Expanded( flex: 1, child: convertFrom, ), new Expanded( flex: 1, child: convertTo, ), new Expanded( flex: 1, child: description, ), ], ), ); ดูเหมือนว่า: convertFromรวมถึง TextField เมื่อฉันแตะที่ช่องข้อความนี้แป้นพิมพ์ Android จะปรากฏบนหน้าจอ สิ่งนี้จะเปลี่ยนขนาดหน้าจอดังนั้นวิดเจ็ตจึงปรับขนาดดังนี้: มีวิธีให้แป้นพิมพ์ "วางซ้อน" หน้าจอเพื่อไม่ให้คอลัมน์ของฉันปรับขนาดได้หรือไม่? หากฉันไม่ได้ใช้Expandedวิดเจ็ตและฮาร์ดโค้ดที่มีความสูงสำหรับแต่ละวิดเจ็ตวิดเจ็ตจะไม่ปรับขนาด แต่ฉันได้รับข้อผิดพลาดลายสีดำและสีเหลืองเมื่อแป้นพิมพ์ปรากฏขึ้น (เนื่องจากมีพื้นที่ไม่เพียงพอ) นอกจากนี้ยังไม่ยืดหยุ่นสำหรับหน้าจอทุกขนาด ฉันไม่แน่ใจว่านี่เป็นแอนดรอยด์เฉพาะหรือเฉพาะสำหรับ …

4
Flutter: จะใช้ Inherited Widget ได้อย่างไร?
วิธีที่ถูกต้องในการใช้ InheritedWidget คืออะไร? จนถึงตอนนี้ฉันเข้าใจแล้วว่ามันให้โอกาสคุณในการเผยแพร่ข้อมูลลงบนโครงสร้างวิดเจ็ต อย่างมากถ้าคุณใส่เป็น RootWidget มันจะสามารถเข้าถึงได้จากวิดเจ็ตทั้งหมดในแผนภูมิบนเส้นทางทั้งหมดซึ่งดีเพราะอย่างใดฉันต้องทำให้ ViewModel / Model ของฉันสามารถเข้าถึงได้สำหรับวิดเจ็ตของฉันโดยไม่ต้องหันไปใช้ globals หรือ Singletons แต่ InheritedWidget ไม่เปลี่ยนรูปฉันจะอัปเดตได้อย่างไร และที่สำคัญกว่านั้นวิดเจ็ตสถานะของฉันถูกกระตุ้นให้สร้างทรีย่อยของพวกมันขึ้นมาใหม่ได้อย่างไร น่าเสียดายที่เอกสารนี้ไม่ชัดเจนมากและหลังจากการพูดคุยกับหลายคนดูเหมือนจะไม่มีใครรู้ว่าวิธีการใช้ที่ถูกต้องคืออะไร ฉันเพิ่มคำพูดจาก Brian Egan: ใช่ฉันเห็นว่าเป็นวิธีการเผยแพร่ข้อมูลลงบนต้นไม้ สิ่งที่ฉันพบว่าสับสนจากเอกสาร API: "วิดเจ็ตที่สืบทอดมาเมื่ออ้างอิงด้วยวิธีนี้จะทำให้ผู้บริโภคสร้างใหม่เมื่อวิดเจ็ตที่สืบทอดมานั้นเปลี่ยนสถานะ" เมื่อฉันอ่านครั้งแรกฉันคิดว่า: ฉันสามารถยัดข้อมูลบางอย่างใน InheritedWidget และกลายพันธุ์ได้ในภายหลัง เมื่อการกลายพันธุ์นั้นเกิดขึ้นมันจะสร้างวิดเจ็ตทั้งหมดที่อ้างอิง InheritedWidget ของฉันสิ่งที่ฉันพบ: ในการเปลี่ยนสถานะของ InheritedWidget คุณต้องรวมไว้ใน StatefulWidget จากนั้นคุณจะกลายพันธุ์สถานะของ StatefulWidget และส่งข้อมูลนี้ไปยัง InheritedWidget ซึ่งส่งข้อมูลไปยังลูก ๆ ทั้งหมด อย่างไรก็ตามในกรณีนั้นดูเหมือนว่าจะสร้างต้นไม้ทั้งหมดใหม่ภายใต้ StatefulWidget ไม่ใช่แค่วิดเจ็ตที่อ้างอิงถึง InheritedWidget ถูกต้องหรือไม่ หรือจะรู้วิธีข้ามวิดเจ็ตที่อ้างอิง …


14
ความสัมพันธ์ระหว่างวิดเจ็ตแบบ stateful และ stateless ใน Flutter คืออะไร?
วิดเจ็ตที่มีสถานะถูกกำหนดให้เป็นวิดเจ็ตใด ๆ ที่เปลี่ยนสถานะภายในอายุการใช้งาน แต่มันเป็นเรื่องธรรมดามากสำหรับการStatelessWidgetมีลูกStatefulWidgetของมัน จะไม่StatelessWidgetกลายเป็นสถานะถ้ามีลูกStatefulWidgetคนใดคนหนึ่ง? ฉันพยายามมองเข้าไปในเอกสารเป็นส่วนหนึ่งของรหัสของStatelessWidgetแต่ไม่สามารถคิดออกว่าStatelessWidgetจะมีเป็นเด็กและยังคงอยู่StatefulwidgetStatelessWidget อะไรคือความสัมพันธ์และความแตกต่างระหว่างวิดเจ็ตแบบ stateful และ stateless ใน Flutter?

12
Flutter: อัปเกรดรหัสเวอร์ชันสำหรับ play store
ฉันได้เผยแพร่แอปพลิเคชันบน play store พร้อมกับกระพือปีกตอนนี้ฉันต้องการอัปโหลดแอปพลิเคชันเวอร์ชันใหม่ ฉันกำลังพยายามเปลี่ยนรหัสเวอร์ชันด้วย: flutter build apk --build-name = 1.0.2 --build-number = 3 หรือเปลี่ยน local.properties เช่นนี้ flutter.versionName=2.0.0 flutter.versionCode=2 flutter.buildMode=release แต่ทุกครั้งที่ฉันได้รับข้อผิดพลาดใน playstore คุณต้องใช้รหัสเวอร์ชันอื่นสำหรับ APK หรือ Android App Bundle เนื่องจากรหัส 1 ถูกกำหนดให้กับ APK หรือ Android App Bundle อื่นแล้ว
108 android  flutter  release 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.