20 Flutter仿京东商城项目 商品详情 底部弹出筛选属性 以及筛选属性页面布局

ProductContentFirst.dart
import 'package:flutter/material.dart';
import '../../widget/JdButton.dart';
import '../../services/ScreenAdaper.dart'; class ProductContentFirst extends StatefulWidget {
ProductContentFirst({Key key}) : super(key: key); _ProductContentFirstState createState() => _ProductContentFirstState();
} class _ProductContentFirstState extends State<ProductContentFirst> {
_attrBottomSheet() {
showModalBottomSheet(
context: context,
builder: (context) {
return GestureDetector(
//Gesture:手势 Detector:探测器
onTap: () {
return false;
},
child: Stack(
children: <Widget>[
Container(
padding: EdgeInsets.all(ScreenAdaper.width()),
child: ListView(
children: <Widget>[
Column(
children: <Widget>[
Wrap(
children: <Widget>[
Container(
width: ScreenAdaper.width(),
child: Padding(
padding: EdgeInsets.only(
top: ScreenAdaper.height()),
child: Text('颜色',
style: TextStyle(
fontWeight: FontWeight.bold)),
),
),
Container(
width: ScreenAdaper.width(),
child: Wrap(
children: <Widget>[
Container(
margin: EdgeInsets.all(),
child: Chip(
label: Text('白色'),
padding: EdgeInsets.all(),
),
),
Container(
margin: EdgeInsets.all(),
child: Chip(
label: Text('白色'),
padding: EdgeInsets.all(),
),
),
Container(
margin: EdgeInsets.all(),
child: Chip(
label: Text('白色'),
padding: EdgeInsets.all(),
),
),
],
),
)
],
),
],
)
],
),
),
Positioned(
bottom: ,
width: ScreenAdaper.width(),
height: ScreenAdaper.height(),
child: Row(
children: <Widget>[
Container(
width: ScreenAdaper.width(),
height: ScreenAdaper.height(),
child: Row(
children: <Widget>[
Expanded(
flex: ,
child: Container(
margin: EdgeInsets.fromLTRB(,,,),
child: JdButton(
color: Color.fromRGBO(, , , 0.9),
text: "加入购物车",
cb: () {
print('加入购物车');
},
),
),
),
Expanded(
flex: ,
child: Container(
margin: EdgeInsets.fromLTRB(,,,),
child: JdButton(
color: Color.fromRGBO(, , , 0.9),
text: "立即购物",
cb: () {
print('立即购物');
},
),
)
)
],
))
],
),
)
],
));
});
} @override
Widget build(BuildContext context) {
return Container(
padding: EdgeInsets.all(),
child: ListView(
children: <Widget>[
AspectRatio(
aspectRatio: / ,
child: Image.network(
"https://www.itying.com/images/flutter/p1.jpg",
fit: BoxFit.cover,
)),
Container(
padding: EdgeInsets.only(top: ),
child: Text(
"联想ThinkPad联想ThinkPad联想ThinkPad联想ThinkPad联想ThinkPad联想ThinkPad联想ThinkPad",
style: TextStyle(
color: Colors.black87, fontSize: ScreenAdaper.size())),
),
Container(
padding: EdgeInsets.only(top: ),
child: Text(
"联想ThinkPad联想ThinkPad联想ThinkPad联想ThinkPad联想ThinkPad联想ThinkPad联想ThinkPad",
style: TextStyle(
color: Colors.black54, fontSize: ScreenAdaper.size())),
),
Container(
padding: EdgeInsets.only(top: ),
child: Row(
children: <Widget>[
Expanded(
flex: ,
child: Row(
children: <Widget>[
Text('特价'),
Text('¥28',
style: TextStyle(
color: Colors.red,
fontSize: ScreenAdaper.size()))
],
),
),
Expanded(
flex: ,
child: Row(
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
Text('原价'),
Text('¥50',
style: TextStyle(
color: Colors.black38,
fontSize: ScreenAdaper.size(),
decoration: TextDecoration.lineThrough))
],
),
)
],
),
),
//筛选:
Container(
margin: EdgeInsets.only(top: ),
height: ScreenAdaper.height(),
child: InkWell(
onTap: () {
_attrBottomSheet();
},
child: Row(
children: <Widget>[
Text('已选', style: TextStyle(fontWeight: FontWeight.bold)),
Text('115,黑色')
],
),
)),
Divider(),
Container(
height: ScreenAdaper.height(),
child: Row(
children: <Widget>[
Text('运费', style: TextStyle(fontWeight: FontWeight.bold)),
Text('免运费')
],
),
),
Divider()
],
));
}
}
20 Flutter仿京东商城项目 商品详情 底部弹出筛选属性 以及筛选属性页面布局的更多相关文章
- 19 Flutter仿京东商城项目 商品详情 底部浮动导航布局 商品页面布局
效果: widget/JdButton.dart import 'package:flutter/material.dart'; import '../services/ScreenAdaper.da ...
- 18 Flutter仿京东商城项目 商品详情顶部tab切换 顶部下拉菜单 底部浮动导航
ProductContent.dart import 'package:flutter/material.dart'; import '../services/ScreenAdaper.dart'; ...
- 21 Flutter仿京东商城项目 商品详情 请求接口渲染数据 商品属性数据渲染
加群452892873 下载对应21可文件,运行方法,建好项目,直接替换lib目录,在往pubspec.yaml添加上一下扩展. cupertino_icons: ^0.1.2 flutter ...
- 01-02 Flutter仿京东商城项目 功能分析、底部导航Tab切换以及路由配置、架构搭建:(Flutter仿京东商城项目 首页布局以及不同终端屏幕适配方案)
Flutter和Dart交流学习群:交流群:452892873 01Flutter仿京东商城项目 功能分析.底部导航Tab切换以及路由配置.架构搭建 02Flutter仿京东商城项目 首页布局以及不同 ...
- 12 Flutter仿京东商城项目 商品列表页面请求数据、封装Loading Widget、上拉分页加载更多
ProductList.dart import 'package:flutter/material.dart'; import '../services/ScreenAdaper.dart'; imp ...
- 13 Flutter仿京东商城项目 商品列表筛选以及上拉分页加载更多
ProductList.dart import 'package:flutter/material.dart'; import '../services/ScreenAdaper.dart'; imp ...
- 11 Flutter仿京东商城项目 商品列表页面二级筛选导航布局
ProductList.dart import 'package:flutter/material.dart'; import '../services/ScreenAdaper.dart'; imp ...
- 42 Flutter仿京东商城项目 修改默认收货地址 显示默认收货地址
CheckOut.dart import 'package:flutter/material.dart'; import '../services/ScreenAdapter.dart'; impor ...
- 41 Flutter 仿京东商城项目签名验证 增加收货地址、显示收货地址 事件广播
加群452892873 下载对应41课文件,运行方法,建好项目,直接替换lib目录 AddressAdd.dart import 'package:dio/dio.dart'; import 'pac ...
随机推荐
- Linux 01 Liunx系统简介
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户.多任务.支持多线程和多CPU的操作系统.它能运行主要的UNIX工具软件.应用程序和网络协议.它支持32位 ...
- python基础应用---列表应用
列表:列表用[]来表示 names = ['wang', 'yuan', 'yang', 'china', 'french', 'wang'] #列表增加 names.append('zhang') ...
- flink相关
flink一.简单实时计算方案 假如现在我们有一个电商平台,每天访问的流量巨大,主要访问流量都集中在衣服类.家电类页面,那么我们想实时看到这两类页面的访问量走势(十分钟出一个统计量),当做平台的重要指 ...
- @@identity, scope_identity ident_current 的区别
- mysql workbench使用技巧,使用workbench导出部分表
最近在刚开始用workbench导出数据的时候,需要导出部分表数据,找来半天找不到,原来是选中库之后,不要要点右边的字母,然后表才显示出来 点左边的对勾的话,右边的表是不会显示出来的!
- vue 后台获取文件流导出excel文件
let params = { compStartTm: Date.parse(this.searchForm.compStartTm) / 1000, compEndTm: Date.parse(th ...
- Autodesk Maya 2019 安装
为什么我接触到建模了呢,我也不知道.只会弄点桌椅板凳简单动画,希望有时间更进一步学习,毕竟我还有一个开发游戏的梦想. 步骤:下载-安装-激活 Maya吧各版本合集下载 地址:https://pan.b ...
- 获取TableViewer里面的所有TableViewerColumn
private TableViewerColumn[] getTableViewerColumns(TableViewer tableViewer) { TableColumn[] columns = ...
- LOJ2265. 「CTSC2017」最长上升子序列
题意:中文题意很清楚 LOJ2263 分析: 根据Dilworth定理,最小链覆盖=最长反链. 问题转化为求 $k$ 个最小不上升序列能覆盖的最大数的个数. 参考链接: 1. https://blog ...
- request.getParameter乱码
String str= new String(request.getParameter("xxxx").getBytes("ISO-8859-1")," ...