在我的專案中,我正在制作一個從云 Firestore 獲取影像的顫動應用程式。現在,我還想從云 Firestore 呼叫 URL,這樣每當有人點擊特定影像時,他們就會重定向到為影像提供的特定鏈接。

我最有一個集合名稱,在集合中我有7 個檔案,在檔案中我有欄位 Image 及其唯一的 url
我有這個代碼來獲取影像,它作業得非常好:
FutureBuilder(
future: getMost(),
builder:(BuildContext context, AsyncSnapshot snapshot) {
if (snapshot.connectionState == ConnectionState.waiting) {
return Lottie.asset('animations/loading.json');
} else {
return ListView.builder(
scrollDirection: Axis.horizontal,
itemCount: snapshot.data.length,
itemBuilder: (_, index) {
return GestureDetector( onTap: null,
child: Padding(
padding: const EdgeInsets.all(2.0),
child: SizedBox(
height: 150.0,
width: 130.0,
child: Container(
decoration: BoxDecoration(
image: DecorationImage(
image: NetworkImage((snapshot.data[index].data()['image']),),fit: BoxFit.cover),
borderRadius:
BorderRadius.circular(10),
),
)
),
),
);
}
);
}
}
)
uj5u.com熱心網友回復:
如果要啟動任何型別的 url,請使用顫振包url_launcher 。
鏈接:https ://pub.dev/packages/url_launcher/
uj5u.com熱心網友回復:
在 pubsec.yaml
dependencies:
url_launcher: ^6.0.18
實際代碼:
openUrl(url) async {
if (await canLaunch(url)){
await launch(url);
}
else {
// error
}
}
FutureBuilder(
future: getMost(),
builder:(BuildContext context, AsyncSnapshot snapshot) {
if (snapshot.connectionState == ConnectionState.waiting) {
return Lottie.asset('animations/loading.json');
} else {
return ListView.builder(
scrollDirection: Axis.horizontal,
itemCount: snapshot.data.length,
itemBuilder: (_, index) {
return GestureDetector( onTap: () => openUrl(snapshot.data[index].data()['url']),
child: Padding(
padding: const EdgeInsets.all(2.0),
child: SizedBox(
height: 150.0,
width: 130.0,
child: Container(
decoration: BoxDecoration(
image: DecorationImage(
image: NetworkImage((snapshot.data[index].data()['image']),),fit: BoxFit.cover),
borderRadius:
BorderRadius.circular(10),
),
)
),
),
);
}
);
}
}
)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/415665.html
標籤:
上一篇:使網路推送通知顯示更長時間
