こんばんは、
私は何時間も探していましたが、解決策が見つかりません。フルスクリーン画像を設定し、スタックを使用していくつかの GestureDetector を配置しました。GestureDetector を押して関数を呼び出すことができるようになりました。問題は、画面サイズが新しいまたは古い電話に変更されると、画像が応答して全画面をカバーしますが、Positioned() はもちろん同じ場所にとどまるため、画像マッピングが正しくなくなることです。
Positioned をレスポンシブにする方法はありますか? または、望ましい結果を達成するためのまったく異なる方法でしょうか?
私を助けてください :)
class Overview extends StatelessWidget {
@override
Widget build(BuildContext context) {
double sh = MediaQuery.of(context).size.height;
double sw = MediaQuery.of(context).size.width;
return Scaffold(
drawer: AppDrawer(),
body: Stack(
children: <Widget>[
Container(
height: sh,
width: sw,
decoration: BoxDecoration(
image: DecorationImage(
image: AssetImage('assets/images/ang7.png'),
fit: BoxFit.cover)),
),
Positioned(
left: 10,
top: 50,
child: IconButton(
icon: Icon(Icons.menu),
iconSize: 30,
color: Colors.white,
onPressed: () => Scaffold.of(context).openDrawer(),
),
Positioned(
left: left,
top: top,
child: GestureDetector(
// child: Icon(Icons.add_circle),
onTap: () => Navigator.push(context, MaterialPageRoute(
builder: (context) {
return Amenities(
tText[page][0],
tText[page][1],
tText[page][2],
);
},
)),
child: Container(
height: 35,
width: 50,
color: Colors.blue,
),
));
),