diff --git a/lib/common/eventBus.dart b/lib/common/event_bus.dart similarity index 100% rename from lib/common/eventBus.dart rename to lib/common/event_bus.dart diff --git a/lib/common/iconNames.dart b/lib/common/icon_names.dart similarity index 100% rename from lib/common/iconNames.dart rename to lib/common/icon_names.dart diff --git a/lib/common/style.dart b/lib/common/style.dart new file mode 100644 index 00000000..31d9bb8d --- /dev/null +++ b/lib/common/style.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +//颜色配置 +class AppColor{ + static const int white = 0xFFFFFFFF; + static const int mainTextColor = 0xFF121917; + static const int subTextColor = 0xff959595; +} + +//文本设置 +class AppText{ + static const middleSize = 16.0; + + static const middleText = TextStyle( + color: Color(AppColor.mainTextColor), + fontSize: middleSize, + ); + + static const middleSubText = TextStyle( + color: Color(AppColor.subTextColor), + fontSize: middleSize, + ); +} +class WidgetDemoColor { + static const int fontColor = 0xFF607173; + static const int iconColor = 0xFF607173; + static const int borderColor = 0xFFEFEFEF; + +} diff --git a/lib/views/widgetPage/cate_card.dart b/lib/components/cate_card.dart similarity index 96% rename from lib/views/widgetPage/cate_card.dart rename to lib/components/cate_card.dart index 7d87e6d1..24c05948 100644 --- a/lib/views/widgetPage/cate_card.dart +++ b/lib/components/cate_card.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; -import '../../model/cat.dart'; -import '../../common/widget_name_to_icon.dart'; -import '../../components/widget_item_container.dart'; +import '../model/cat.dart'; +import '../common/widget_name_to_icon.dart'; +import '../components/widget_item_container.dart'; class CateCard extends StatefulWidget { final Cat category; diff --git a/lib/components/CompList.dart b/lib/components/comp_list.dart similarity index 98% rename from lib/components/CompList.dart rename to lib/components/comp_list.dart index 580c41da..bca5c7ca 100644 --- a/lib/components/CompList.dart +++ b/lib/components/comp_list.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import 'package:flutter_rookie_book/views/Detail.dart'; +import 'package:flutter_rookie_book/views/detail.dart'; diff --git a/lib/views/widgetFeature/FirstPageItem.dart b/lib/components/first_page_item.dart similarity index 97% rename from lib/views/widgetFeature/FirstPageItem.dart rename to lib/components/first_page_item.dart index f91ffd09..3e4e8604 100644 --- a/lib/views/widgetFeature/FirstPageItem.dart +++ b/lib/components/first_page_item.dart @@ -7,7 +7,7 @@ * tartget: FirstPageItem */ -import '../../common/Util.dart'; +import '../common/Util.dart'; class FirstPageItem { bool hot; diff --git a/lib/components/homeBanner.dart b/lib/components/home_banner.dart similarity index 100% rename from lib/components/homeBanner.dart rename to lib/components/home_banner.dart diff --git a/lib/components/ListRefresh.dart b/lib/components/list_refresh.dart similarity index 100% rename from lib/components/ListRefresh.dart rename to lib/components/list_refresh.dart diff --git a/lib/components/pagination.dart b/lib/components/pagination.dart new file mode 100644 index 00000000..2793882d --- /dev/null +++ b/lib/components/pagination.dart @@ -0,0 +1,63 @@ +// Copyright 2015 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'package:flutter/material.dart'; +import './home_banner.dart'; +import '../model/story.dart'; +import 'package:url_launcher/url_launcher.dart'; + +class Pagination extends StatelessWidget { + static final String routeName = '/material/page-selector'; + static final List icons = [ + const Icon(Icons.event, semanticLabel: 'Event'), + const Icon(Icons.home, semanticLabel: 'Home'), + const Icon(Icons.android, semanticLabel: 'Android'), + const Icon(Icons.alarm, semanticLabel: 'Alarm'), + const Icon(Icons.face, semanticLabel: 'Face'), + const Icon(Icons.language, semanticLabel: 'Language'), + ]; + + final List bannerStories = []; + + final List arr = [ + {'image': 'https://img.alicdn.com/tfs/TB1W4hMAwHqK1RjSZJnXXbNLpXa-519-260.jpg', 'type': 0, 'id': 9695909, 'url': 'https://www.zhihu.com/question/294145797/answer/551162834', 'title': '为什么阿里巴巴、腾讯和 Google 之类的企业都在使用 Flutter 开发 App?'}, + {'image': 'https://img.alicdn.com/tfs/TB1XmFIApzqK1RjSZSgXXcpAVXa-720-338.jpg', 'type': 0, 'id': 9695859, 'url': 'https://zhuanlan.zhihu.com/p/51696594', 'title': 'Flutter 1.0 正式发布: Google 的便携 UI 工具包'}, + {'image': 'https://img.alicdn.com/tfs/TB1mClCABLoK1RjSZFuXXXn0XXa-600-362.jpg', 'type': 0, 'id': 96956491409, 'url':'https://zhuanlan.zhihu.com/p/53497167','title': 'Flutter 示范应用现已开源 — 万物起源(The History of Everything)'}, + {'image': 'https://img.alicdn.com/tfs/TB1fXxIAAvoK1RjSZFNXXcxMVXa-600-362.jpg', 'type': 0, 'id': 9695816, 'url': 'https://mp.weixin.qq.com/s?__biz=MzAwODY4OTk2Mg==&mid=2652048101&idx=1&sn=20296088e4bd8ca33c5c9991167d9f7d&chksm=808caaa0b7fb23b65c0e5806209f8d86da6732f3a00a70353f3606018339518b0a8656f14dc5&mpshare=1&scene=2&srcid=0106SZapVysZdIS6Oc5AhNH6&from=timeline&ascene=2&devicetype=android-27&version=27000038&nettype=WIFI&abtest_cookie=BQABAAgACgALABMAFAAFAJ2GHgAjlx4AV5keAJuZHgCcmR4AAAA%3D&lang=zh_CN&pass_ticket=4K1%2FUpsxP4suPj2iubR17wbAP7r9LW9iYrPAC2dppTqv7j7JO5FWMXtcKeBRxueV&wx_header=1', 'title': 'Flutter 与 Material Design 双剑合璧,助您构建精美应用'} + ]; + + void _launchURL(String url) async { + if (await canLaunch(url)) { + await launch(url); + } else { + throw 'Could not launch $url'; + } + } + + List _pageSelector(BuildContext context) { + List list = []; + /// super.initState(); + arr.forEach((item) { + bannerStories.add(StoryModel.fromJson(item)); + }); + + + if (arr.length > 0) { + list.add(HomeBanner(bannerStories, (story) { + _launchURL('${story.url}'); + })); + } + return list; + } + + @override + Widget build(BuildContext context) { + return + Column( + //physics: AlwaysScrollableScrollPhysics(), + //padding: EdgeInsets.only(), + children: _pageSelector(context) + ); + } +} diff --git a/lib/components/SearchInput.dart b/lib/components/search_input.dart similarity index 100% rename from lib/components/SearchInput.dart rename to lib/components/search_input.dart diff --git a/lib/components/widget_item.dart b/lib/components/widget_item.dart index 20648fa0..444f6ba0 100644 --- a/lib/components/widget_item.dart +++ b/lib/components/widget_item.dart @@ -2,7 +2,7 @@ * @author 一凨 */ import 'package:flutter/material.dart'; -import '../common/Style.dart'; +import '../common/style.dart'; import '../common/widget_name_to_icon.dart'; class WidgetItem extends StatelessWidget { diff --git a/lib/main.dart b/lib/main.dart index 40191ce5..a85aaa6c 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -2,16 +2,16 @@ import 'package:flutter/material.dart'; import 'package:fluro/fluro.dart'; import 'package:flutter/rendering.dart'; -import 'views/FirstPage.dart'; -import 'views/widgetPage.dart'; -import 'views/FourthPage.dart'; +import 'views/first_page.dart'; +import 'views/widget_page.dart'; +import 'views/fourth_page.dart'; import 'views/collection_page.dart'; import 'routers/routers.dart'; import 'routers/application.dart'; import 'common/provider.dart'; import 'model/widget.dart'; import './widgets/index.dart'; -import 'package:flutter_rookie_book/components/SearchInput.dart'; +import 'package:flutter_rookie_book/components/search_input.dart'; diff --git a/lib/views/detail.dart b/lib/views/detail.dart new file mode 100644 index 00000000..0677a2bc --- /dev/null +++ b/lib/views/detail.dart @@ -0,0 +1,22 @@ +import 'package:flutter/material.dart'; + +class Detail extends StatelessWidget { + + final String id ; + Detail(this.id) ; + + + @override + Widget build(BuildContext context) { + return new Scaffold( + appBar: new AppBar( + title: new Text('List Detail'), + ), + body: new Center( + child: new Text('msg:'+ 'id='+id), + ), + ) ; + } + + +} \ No newline at end of file diff --git a/lib/views/FirstPage.dart b/lib/views/first_page.dart similarity index 91% rename from lib/views/FirstPage.dart rename to lib/views/first_page.dart index 81032349..d183770d 100644 --- a/lib/views/FirstPage.dart +++ b/lib/views/first_page.dart @@ -1,9 +1,9 @@ import 'dart:async'; import 'package:flutter/material.dart'; import 'package:flutter_rookie_book/common/list_view_item.dart'; -import 'package:flutter_rookie_book/components/ListRefresh.dart' as listComp; -import 'package:flutter_rookie_book/components/Pagination.dart'; -import './widgetFeature/FirstPageItem.dart'; +import 'package:flutter_rookie_book/components/list_refresh.dart' as listComp; +import 'package:flutter_rookie_book/components/pagination.dart'; +import 'package:flutter_rookie_book/components/first_page_item.dart'; import '../common/net_utils.dart'; class FirstPage extends StatefulWidget { diff --git a/lib/views/FourthPage.dart b/lib/views/fourth_page.dart similarity index 89% rename from lib/views/FourthPage.dart rename to lib/views/fourth_page.dart index c4c44af3..fc48f1db 100644 --- a/lib/views/FourthPage.dart +++ b/lib/views/fourth_page.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; -import '../components/CompList.dart'; +import '../components/comp_list.dart'; class FourthPage extends StatefulWidget { diff --git a/lib/views/widgetPage.dart b/lib/views/widget_page.dart similarity index 96% rename from lib/views/widgetPage.dart rename to lib/views/widget_page.dart index c1382258..f074669e 100644 --- a/lib/views/widgetPage.dart +++ b/lib/views/widget_page.dart @@ -5,7 +5,7 @@ * @Last Modified time: 2019-01-11 14:40:09 */ import 'package:flutter/material.dart'; -import 'widgetPage/cate_card.dart'; +import 'package:flutter_rookie_book/components/cate_card.dart'; import '../model/cat.dart'; class WidgetPage extends StatefulWidget { diff --git a/lib/widgets/elements/Form/Button/IconButton/demo.dart b/lib/widgets/elements/Form/Button/IconButton/demo.dart index 3fd6cb44..1be6e065 100644 --- a/lib/widgets/elements/Form/Button/IconButton/demo.dart +++ b/lib/widgets/elements/Form/Button/IconButton/demo.dart @@ -8,7 +8,7 @@ */ import 'dart:math'; import 'package:flutter/material.dart'; -import 'package:flutter_rookie_book/common/iconNames.dart'; +import 'package:flutter_rookie_book/common/icon_names.dart'; final int len = IconNames.names.length;