diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 5a8d37ca..8c3f0e89 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -27,7 +27,6 @@ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; 333E5DAE7FC10AC69FEC26C0 /* libPods-Runner.a in Frameworks */ = {isa = PBXBuildFile; fileRef = DDA792F029EDD7A11295D192 /* libPods-Runner.a */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; - 2D5378261FAA1A9400D5DBA9 /* flutter_assets in Resources */ = {isa = PBXBuildFile; fileRef = 2D5378251FAA1A9400D5DBA9 /* flutter_assets */; }; 3B80C3941E831B6300D905FE /* App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; }; 3B80C3951E831B6300D905FE /* App.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 3B80C3931E831B6300D905FE /* App.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 9705A1C61CF904A100538489 /* Flutter.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9740EEBA1CF902C7004384FC /* Flutter.framework */; }; @@ -75,7 +74,6 @@ 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 2D5378251FAA1A9400D5DBA9 /* flutter_assets */ = {isa = PBXFileReference; lastKnownFileType = folder; name = flutter_assets; path = Flutter/flutter_assets; sourceTree = SOURCE_ROOT; }; 3B80C3931E831B6300D905FE /* App.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = App.framework; path = Flutter/App.framework; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; 7AFFD8ED1D35381100E5BB4D /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; @@ -148,7 +146,6 @@ children = ( 3B80C3931E831B6300D905FE /* App.framework */, 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, - 2D5378251FAA1A9400D5DBA9 /* flutter_assets */, 9740EEBA1CF902C7004384FC /* Flutter.framework */, 9740EEB21CF90195004384FC /* Debug.xcconfig */, 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, @@ -274,7 +271,6 @@ 0828E4A2220692B500A59437 /* iPhone Portrait-Retina HD 5.5.png in Resources */, 0828E49A220692B500A59437 /* iPhone X_XS Portrait.png in Resources */, 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, - 2D5378261FAA1A9400D5DBA9 /* flutter_assets in Resources */, 0828E49E220692B500A59437 /* iPad Portrait@2x.png in Resources */, 0828E49D220692B500A59437 /* iPhone Portrait@2x.png in Resources */, 0828E499220692B500A59437 /* iPhone Portrait-Retina HD 4.7.png in Resources */, diff --git a/lib/components/disclaimer_msg.dart b/lib/components/disclaimer_msg.dart index f3f40303..78ebb0a5 100644 --- a/lib/components/disclaimer_msg.dart +++ b/lib/components/disclaimer_msg.dart @@ -166,24 +166,24 @@ class DisclaimerMsgState extends State { } Widget build(BuildContext context) { - return new GestureDetector( + return GestureDetector( onTap: () { showAlertDialog(context); }, child: Stack( //alignment: const Alignment(1.6, 1.6), children: [ - new Container( + Container( width: 90.0, alignment: Alignment.center, - decoration: new BoxDecoration( + decoration: BoxDecoration( borderRadius: - new BorderRadius.horizontal(right: Radius.circular(10)), + BorderRadius.horizontal(right: Radius.circular(10)), color: Colors.black45, ), - child: new Text( + child: Text( '🔔 免责声明', - style: new TextStyle( + style: TextStyle( fontSize: 14.0, //fontWeight: FontWeight.bold, color: Colors.white, diff --git a/lib/views/first_page/first_page.dart b/lib/views/first_page/first_page.dart index 6ad2caa4..e121390f 100644 --- a/lib/views/first_page/first_page.dart +++ b/lib/views/first_page/first_page.dart @@ -10,7 +10,7 @@ import 'package:flutter_go/views/first_page/first_page_item.dart'; import 'package:flutter_go/components/disclaimer_msg.dart'; import 'package:flutter_go/utils/net_utils.dart'; -GlobalKey key; +// ValueKey key; class FirstPage extends StatefulWidget { @override @@ -20,6 +20,7 @@ class FirstPage extends StatefulWidget { class FirstPageState extends State with AutomaticKeepAliveClientMixin{ Future _prefs = SharedPreferences.getInstance(); Future _unKnow; + GlobalKey key; @override bool get wantKeepAlive => true; @@ -30,6 +31,7 @@ class FirstPageState extends State with AutomaticKeepAliveClientMixin super.initState(); if (key == null) { key = GlobalKey(); + // key = const Key('__RIKEY1__'); //获取sharePre _unKnow = _prefs.then((SharedPreferences prefs) { return (prefs.getBool('disclaimer::Boolean') ?? false); diff --git a/lib/views/fourth_page/pages.dart b/lib/views/fourth_page/pages.dart index 4eff1116..5d088e07 100644 --- a/lib/views/fourth_page/pages.dart +++ b/lib/views/fourth_page/pages.dart @@ -5,21 +5,21 @@ import '../../routers/routers.dart'; import '../../utils/shared_preferences.dart'; final pages = [ - new PageViewModel( + PageViewModel( const Color(0xFFcd344f), //'assets/mountain.png', 'assets/images/p2.png', 'FlutterGo是什么?', '【FlutterGo】 是由"阿里拍卖"前端团队几位 Flutter 粉丝,用业余时间开发的一款,用于 Flutter 教学帮助的App,这里没有高大尚的概念,只有一个一个亲历的尝试,用最直观的方式展示的 Flutter 官方demo', 'assets/images/plane.png'), - new PageViewModel( + PageViewModel( const Color(0xFF638de3), //'assets/world.png', 'assets/images/p1.png', 'FLutterGo的背景', '🐢 官网文档示例较不够健全,不够直观\n🐞 运行widget demo要到处翻阅资料\n🐌 英文文档翻译生涩难懂,学习资料太少\n🚀 需要的效果不知道用哪个widget\n', 'assets/images/calendar.png'), - new PageViewModel( + PageViewModel( const Color(0xFFFF682D), //'assets/home.png', 'assets/images/p3.png', @@ -57,56 +57,68 @@ class Page extends StatelessWidget { }, elevation: 10.0, color: Colors.black26, - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + // shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(20)), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.horizontal(left: Radius.circular(20.0))), //如果不手动设置icon和text颜色,则默认使用foregroundColor颜色 - icon: new Icon(iconName, color: Colors.white, size: 20.0), - label: new Text( + icon: Icon(iconName, color: Colors.white, size: 14.0), + label: Text( txt, maxLines: 1, style: TextStyle( - color: Colors.white, fontSize: 16, fontWeight: FontWeight.w700), + color: Colors.white, fontSize: 14, fontWeight: FontWeight.w700), )); } @override Widget build(BuildContext context) { - return new Container( - width: double.infinity, - /// height:MediaQuery.of(context).size.height-200.0, - color: viewModel.color, - padding: const EdgeInsets.fromLTRB(0, 0, 0, 0), - child: Opacity( - opacity: percentVisible, - child:ListView( - children: [ - layout(context) - ], + return Stack( + //alignment: const Alignment(1.2, 0.6), + children: [ + Container( + width: double.infinity, + /// height:MediaQuery.of(context).size.height-200.0, + color: viewModel.color, + padding: const EdgeInsets.fromLTRB(0, 0, 0, 0), + child: Opacity( + opacity: percentVisible, + child: ListView( + children: [ + layout(context), + ], + ), + ) ), - )); + Positioned( + right: -5.0, + top: 2.0, + child: creatButton(context, 'GitHub', Icons.arrow_forward, 'goGithub') + ), + ] + ); } Column layout(BuildContext context) { - return new Column( + return Column( crossAxisAlignment: CrossAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center, children: [ - new Transform( - transform: new Matrix4.translationValues( + Transform( + transform: Matrix4.translationValues( 0.0, 50.0 * (1.0 - percentVisible), 0.0), - child: new Padding( - padding: new EdgeInsets.only(top: 20.0, bottom: 10.0), - child: new Image.asset(viewModel.heroAssetPath, + child: Padding( + padding: EdgeInsets.only(top: 20.0, bottom: 10.0), + child: Image.asset(viewModel.heroAssetPath, width: 160.0, height: 160.0), ), ), - new Transform( - transform: new Matrix4.translationValues( + Transform( + transform: Matrix4.translationValues( 0.0, 30.0 * (1.0 - percentVisible), 0.0), - child: new Padding( - padding: new EdgeInsets.only(top: 10.0, bottom: 10.0), - child: new Text( + child: Padding( + padding: EdgeInsets.only(top: 10.0, bottom: 10.0), + child: Text( viewModel.title, - style: new TextStyle( + style: TextStyle( color: Colors.white, fontFamily: 'FlamanteRoma', fontSize: 28.0, @@ -114,15 +126,15 @@ class Page extends StatelessWidget { ), ), ), - new Transform( - transform: new Matrix4.translationValues( + Transform( + transform: Matrix4.translationValues( 0.0, 30.0 * (1.0 - percentVisible), 0.0), - child: new Padding( - padding: new EdgeInsets.only(bottom: 10.0), - child: new Text( + child: Padding( + padding: EdgeInsets.only(bottom: 10.0), + child: Text( viewModel.body, textAlign: TextAlign.center, - style: new TextStyle( + style: TextStyle( height: 1.2, color: Colors.white, fontFamily: 'FlamanteRomaItalic', @@ -131,13 +143,13 @@ class Page extends StatelessWidget { ), ), ), - ButtonBar( - alignment: MainAxisAlignment.center, - children: [ - creatButton(context, '开始使用', Icons.add_circle_outline, 'start'), - creatButton(context, 'GitHub', Icons.arrow_forward, 'goGithub'), - ], - ) +// ButtonBar( +// alignment: MainAxisAlignment.center, +// children: [ +// creatButton(context, '开始使用', Icons.add_circle_outline, 'start'), +// creatButton(context, 'GitHub', Icons.arrow_forward, 'goGithub'), +// ], +// ) ]); } }