Flutter 代码优化:精简课程时间轴代码
dailycourse = [ _buildCourseTile('上午', '1,2节 8:00 - 9:35', SolidLineConnector(color: Global.home_currentcolor), DotIndicator(color: Global.home_currentcolor), null), _buildCourseTile('', '3,4节 9:55 -11:30', SolidLineConnector(color: Global.home_currentcolor), DotIndicator(color: Global.home_currentcolor), null), _buildCourseTile('下午', '5,6节 13;30 - 15:05', SolidLineConnector(color: Global.home_currentcolor), DotIndicator(color: Global.home_currentcolor), null), _buildCourseTile('', '7,8节 15:25 - 17:00', SolidLineConnector(color: Global.home_currentcolor), DotIndicator(color: Global.home_currentcolor), null), _buildCourseTile('晚课', '9,10节 18:00 - 19:35', SolidLineConnector(color: Global.home_currentcolor), DotIndicator(color: Global.home_currentcolor), null), _buildCourseTile('', '11,12节 19:55 - 21:30', SolidLineConnector(color: Global.home_currentcolor), DotIndicator(color: Global.home_currentcolor), null), ];
Widget _buildCourseTile(String title, String subtitle, Connector startConnector, Indicator indicator, Connector endConnector) { return Container( padding: EdgeInsets.only(left: 60, top: title == '' ? 0 : 30), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ title == '' ? Container() : Text( title, style: TextStyle( fontSize: 30, fontWeight: FontWeight.bold, color: Global.home_currentcolor), ), SizedBox(height: 10), TimelineTile( oppositeContents: Padding( padding: const EdgeInsets.all(8.0), child: Card( child: Container( width: widthx, padding: EdgeInsets.all(8.0), child: Text( subtitle, style: TextStyle( color: Colors.black, fontWeight: FontWeight.bold), ), ), ), ), contents: Card( //透明 color: Colors.transparent, shadowColor: Colors.transparent, child: Container( width: widthx, padding: EdgeInsets.all(8.0), child: Text( '', style: TextStyle(color: Colors.white), ), ), ), node: TimelineNode( indicator: indicator, startConnector: startConnector, endConnector: endConnector, ), ), ], ), ); }
原文地址: http://www.cveoy.top/t/topic/ojFT 著作权归作者所有。请勿转载和采集!