91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

flutter如何實現底部抽屜效果

發布時間:2022-03-23 14:05:11 來源:億速云 閱讀:355 作者:小新 欄目:開發技術

小編給大家分享一下flutter如何實現底部抽屜效果,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

具體內容如下

安卓:showModalBottomSheet
IOS:showCupertinoModalPopup

效果圖

flutter如何實現底部抽屜效果

完整代碼

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

///@作者: Q.L
///@創建日期: 2021-09-09 10:55
///@描述: {底部抽屜}
class ActionSheetPage extends StatefulWidget {
  const ActionSheetPage({Key? key}) : super(key: key);

  @override
  _ActionSheetPageState createState() => _ActionSheetPageState();
}

class _ActionSheetPageState extends State<ActionSheetPage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('底部抽屜彈出'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: [
            ElevatedButton(
                onPressed: () {
                  _showModalBottomSheet();
                },
                child: Text('安卓彈出')),
            ElevatedButton(
                onPressed: () {
                  _showCupertinoModalPopup();
                },
                child: Text('IOS彈出')),
          ],
        ),
      ),
    );
  }

  _showModalBottomSheet() async {
    var _result = await showModalBottomSheet(
        context: context,
        backgroundColor: Colors.greenAccent, //背景顏色
        // elevation: 500, //陰影
        shape: RoundedRectangleBorder(
            // borderRadius: BorderRadius.all(Radius.circular(10)),//所有圓角邊框
            borderRadius:
                BorderRadius.only(topLeft: Radius.circular(10), topRight: Radius.circular(10))),
        isScrollControlled: false, //是否是全屏還是半屏,true全屏,默認false半屏
        isDismissible: true, //外部是否可以點擊,false不可以點擊,true可以點擊,點擊后消失
        builder: (BuildContext context) {
          return Column(
            mainAxisSize: MainAxisSize.min, // 設置最小的彈出
            children: [
              ListTile(
                leading: Icon(Icons.photo_camera),
                title: Text("拍照"),
                onTap: () {
                  Navigator.of(context).pop('拍照');
                },
              ),
              ListTile(
                leading: Icon(Icons.photo_library),
                title: Text("相冊"),
                onTap: () {
                  Navigator.of(context).pop('相冊');
                },
              ),
            ],
          );
        });
    print('選擇了安卓==>>${_result ?? '點擊了屏幕取消'}');
  }

  _showCupertinoModalPopup() async {
    var result = await showCupertinoModalPopup(
        context: context,
        builder: (context) {
          return CupertinoActionSheet(
            title: Text('提示'),
            message: Text('是否要編輯當前項?'),
            actions: [
              CupertinoActionSheetAction(
                child: Text('編輯'),
                onPressed: () {
                  Navigator.of(context).pop('編輯');
                },
                isDefaultAction: true,
              ),
              CupertinoActionSheetAction(
                child: Text('刪除'),
                onPressed: () {
                  Navigator.of(context).pop('刪除');
                },
                isDestructiveAction: true,
              ),
            ],
            cancelButton: CupertinoActionSheetAction(
              child: Text('取消'),
              onPressed: () {
                Navigator.of(context).pop('取消');
              },
            ),
          );
        });
    print('選擇了IOS==>>${result ?? '點擊了屏幕取消'}');
  }
}

以上是“flutter如何實現底部抽屜效果”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

长治市| 平昌县| 肃南| 古蔺县| 中卫市| 泊头市| 湘乡市| 合川市| 偏关县| 盐津县| 紫云| 鸡西市| 内乡县| 平顶山市| 黄浦区| 集安市| 丹江口市| 庐江县| 安福县| 张家川| 油尖旺区| 米易县| 普安县| 土默特左旗| 广东省| 静海县| 信阳市| 称多县| 青河县| 呼玛县| 安阳市| 岗巴县| 武山县| 信丰县| 马鞍山市| 崇州市| 工布江达县| 舞钢市| 武强县| 苏尼特右旗| 广西|