短視訊平臺開發,自定義一個彈窗樣式和內容
短視訊平臺開發,自定義一個彈窗樣式和內容實現的相關程式碼
import 'package:flutter/material.dart'; class AppDialog extends Dialog { final String title; final String? confirm; final String? cancel; final String? content; final String? cancelColor; final String? confirmColor; final bool? showCancel; final OnDialogClickListener? clickListener; const AppDialog( {this.cancelColor = '#00000', this.confirmColor = ''#576B95'', this.title = '標題', this.cancel = '取消', this.confirm = '確定', this.content = '', this.showCancel = true, this.clickListener, Key? key}) : super(key: key); @override Widget build(BuildContext context) { return Center( child: Container( constraints: const BoxConstraints(maxHeight: 600), width: double.infinity, margin: const EdgeInsets.all(30), decoration: const ShapeDecoration( color: Colors.white, shape: RoundedRectangleBorder( borderRadius: BorderRadius.all(Radius.circular(5.0)))), child: Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.center, mainAxisSize: MainAxisSize.min, children: [ Container( margin: const EdgeInsets.only(top: 12, bottom: 14), child: Text( title, style: const TextStyle( fontSize: 18, fontWeight: FontWeight.bold, color: Colors.black), ), ), Offstage( offstage: content!.isEmpty, child: Container( margin: const EdgeInsets.only(bottom: 17), child: Text( content!, style: TextStyle(fontSize: 17, color: ThemeColors.color7f7f7f), ), ), ), Container( height: 0.7, color: ThemeColors.colorE8E8E8, ), getBottomWidget(context), ], ), ), ); } getBottomWidget(context) { if (showCancel!) { return SizedBox( height: 43, child: Row( children: <Widget>[ Expanded( child: InkWell( child: Container( alignment: Alignment.center, child: Text( cancel!, style: const TextStyle( fontSize: 17, color: Colors.black, fontWeight: FontWeight.bold), ), ), onTap: () => { clickListener?.onCancel(), Navigator.of(context).pop(), }, ), ), Container( height: 43, width: 0.7, color: ThemeColors.colorE8E8E8, ), Expanded( child: InkWell( child: Container( alignment: Alignment.center, child: Text( confirm!, style: TextStyle( fontSize: 17, color: ThemeColors.color576B95, fontWeight: FontWeight.bold), ), ), onTap: () => {clickListener?.onConfirm(), Navigator.of(context).pop()}, ), ), ], ), ); } else { return InkWell( child: Container( height: 43, alignment: Alignment.center, child: Text( confirm!, style: TextStyle( fontSize: 17, color: ThemeColors.color576B95, fontWeight: FontWeight.bold), ), ), onTap: () => { clickListener?.onConfirm(), Navigator.of(context).pop(), }, ); } } } abstract class OnDialogClickListener { void onConfirm(); void onCancel(); }
以上就是短視訊平臺開發,自定義一個彈窗樣式和內容實現的相關程式碼, 更多內容歡迎關注之後的文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2888240/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 短視訊平臺搭建,自定義滾動條的樣式
- android短視訊開發,自定義更改平臺主題以及狀態列樣式Android
- 短視訊平臺搭建,收到通知後彈出相關提示的彈窗
- 短視訊程式開發,簡易的自定義確認彈框AlertDialog
- 短視訊平臺原始碼,自定義流式佈局--kotlin原始碼Kotlin
- android短視訊開發,自定義下拉選單Android
- 短視訊平臺搭建,Android自定義旋轉進度條Android
- 短視訊平臺開發,下拉重新整理、到底自動重新整理新內容
- avalonia自定義彈窗
- react封裝一個可自定義內容的modal彈框元件React封裝元件
- 短視訊開發app,webservice自定義加入攔截器APPWeb
- 自定義版本更新彈窗
- uniapp 自定義彈窗元件APP元件
- WPF 自定義MessageBox 彈窗提示 彈窗載入
- 一對一直播app開發,自定義彈出對話方塊的樣式APP
- 短視訊開發app,自定義帶進度條的視訊播放按鈕APP
- 直播軟體開發,工具類的自定義彈窗效果
- 短視訊平臺原始碼,自定義上傳有邊框的背景圖片原始碼
- 短視訊平臺開發,查詢日期和時間的陣列陣列
- 直播平臺開發,TabLayout的使用和自定義紅點訊息提示TabLayout
- 短視訊平臺開發,點選輸入框時自動彈出軟鍵盤
- 34.qt quick-Popup彈出視窗自定義QTUI
- 短視訊平臺開發,平臺自帶的字型調節大中小
- 偏前端 – jquery-iframe內觸發父視窗自定義事件-前端jQuery事件
- avalonia實現自定義小彈窗
- 短視訊平臺開發,將圖片、視訊儲存到本地的相簿中
- 短視訊app開發,內容模糊化,解鎖更多強化功能APP
- react-native 仿原生自定義彈窗|iOS/Android 彈窗效果ReactiOSAndroid
- 鴻蒙專案實戰(三):自定義彈窗開發實踐鴻蒙
- 短視訊平臺開發,在上傳圖片時,自動新增平臺的水印
- 搜狐號內容分發平臺,一鍵分發多個自媒體平臺
- 直播平臺原始碼,當內容超過視窗高度時,可以使用滾輪來檢視內容原始碼
- 短視訊平臺搭建,仿製一個登陸介面的demo
- 短視訊軟體開發,當使用者選擇免打擾時,平臺自行攔截平臺內部訊息
- Sharepoint 2013內容查詢Web部件自定義顯示樣式(實戰)Web
- 直播原始碼網站,自定義平臺介面,完成各項內容更改原始碼網站
- 短視訊平臺開發,圖片上傳和圖片預覽功能實現
- 短視訊原始碼開創內容時代領路者原始碼