এটি একটি পরিপূরক উত্তর যা উল্লিখিত কয়েকটি সমাধানের বাস্তবায়ন দেখায়।
FractionallySizedBox
আপনার যদি একটি একক উইজেট থাকে তবে আপনি FractionallySizedBox
পূরণ করার জন্য উপলব্ধ জায়গার শতাংশ নির্দিষ্ট করতে একটি উইজেট ব্যবহার করতে পারেন। এখানে সবুজটি Container
উপলব্ধ প্রস্থের 70% এবং উপলব্ধ উচ্চতার 30% পূরণ করতে প্রস্তুত।
Widget myWidget() {
return FractionallySizedBox(
widthFactor: 0.7,
heightFactor: 0.3,
child: Container(
color: Colors.green,
),
);
}
সম্প্রসারিত
Expanded
উইজেট একটি উইজেট উপলব্ধ স্থান পূরণ করার জন্য, অনুভূমিকভাবে যদি এটি একটি সারিতে, অথবা উল্লম্বভাবে যদি এটি একটি কলামে অনুমতি দেয়। আপনি flex
ওজন দিতে একাধিক উইজেট সহ সম্পত্তি ব্যবহার করতে পারেন । এখানে সবুজ Container
প্রস্থের %০% এবং হলুদ প্রস্থের Container
৩০% নেয়।
আপনি এটা উল্লম্বভাবে কাজ করতে চান, তাহলে শুধু প্রতিস্থাপন Row
সঙ্গে Column
।
Widget myWidget() {
return Row(
children: <Widget>[
Expanded(
flex: 7,
child: Container(
color: Colors.green,
),
),
Expanded(
flex: 3,
child: Container(
color: Colors.yellow,
),
),
],
);
}
পরিপূরক কোড
main.dart
আপনার রেফারেন্সের জন্য কোড এখানে ।
import 'package:flutter/material.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: Text("FractionallySizedBox"),
),
body: myWidget(),
),
);
}
}
// replace with example code above
Widget myWidget() {
return ...
}