Skip to content

Commit b825416

Browse files
author
zachary
committed
v0.9 重构完成
1 parent f45ed17 commit b825416

6 files changed

Lines changed: 114 additions & 365 deletions

File tree

.idea/workspace.xml

Lines changed: 88 additions & 196 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

lib/CustomView.dart

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,18 +5,16 @@ import 'package:flutter/material.dart';
55
class ScoreView extends StatelessWidget {
66
double score;
77
Size size;
8-
double width;
9-
double height;
8+
double padding;
9+
double spacing;
1010

11-
ScoreView(this.size, this.score);
11+
ScoreView(this.padding, this.spacing, this.size, this.score);
1212

1313
@override
1414
Widget build(BuildContext context) {
1515
return new CustomPaint(
1616
size: size,
17-
painter: new ScorePainter(
18-
score,
19-
),
17+
painter: new ScorePainter(score, padding, spacing),
2018
);
2119
}
2220
}
@@ -28,8 +26,10 @@ class ScorePainter extends CustomPainter {
2826
Paint _backgroundPaint;
2927
Paint _foregroundPaint;
3028

31-
ScorePainter(num score) {
29+
ScorePainter(num score, double padding, num spacing) {
3230
this._score = score;
31+
this.padding = padding;
32+
this.spacing = spacing;
3333
init();
3434
}
3535

lib/pages/explore_page.dart

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import 'dart:convert';
22

3+
import 'package:doubanmovie_flutter/CustomView.dart';
34
import 'package:doubanmovie_flutter/model/MovieIntro.dart';
45
import 'package:doubanmovie_flutter/model/MovieIntroList.dart';
5-
import 'package:doubanmovie_flutter/utils/StarView.dart';
66
import 'package:flutter/material.dart';
77
import 'package:html/dom.dart' as dom;
88
import 'package:html/parser.dart' show parse;
@@ -181,8 +181,8 @@ class ExplorePageState extends State<ExplorePage> {
181181
color: Colors.black,
182182
),
183183
),
184-
new StarView(
185-
80.0, 20.0, double.parse(_newMovieList[index]['score'])),
184+
new ScoreView(0.0, 2.0, new Size(80.0, 20.0),
185+
double.parse(_newMovieList[index]['score'])),
186186
new Text(
187187
_newMovieList[index]['score'] + '分',
188188
style: new TextStyle(
@@ -308,6 +308,7 @@ class ExplorePageState extends State<ExplorePage> {
308308
});
309309
}
310310

311+
//爬取新片榜
311312
void loadNewRankData() {
312313
List<Map<String, String>> list = [];
313314
http.get('https://movie.douban.com/chart').then((http.Response response) {
@@ -355,6 +356,7 @@ class ExplorePageState extends State<ExplorePage> {
355356
});
356357
}
357358

359+
// 爬取周榜
358360
void getWeeklyData() {
359361
List<Map<String, String>> list = [];
360362
http.get('https://movie.douban.com/chart').then((http.Response response) {
@@ -394,6 +396,7 @@ class ExplorePageState extends State<ExplorePage> {
394396
});
395397
}
396398

399+
//跳转到详情页
397400
toDetailPage(String movieId) {
398401
setState(() {
399402
Navigator.of(context).push(new MaterialPageRoute<Null>(

lib/pages/more_page.dart

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import 'package:flutter/material.dart';
22
import 'package:flutter_webview_plugin/flutter_webview_plugin.dart';
33

4+
/// 更多页面
45
class MorePage extends StatefulWidget {
56
@override
67
State createState() {
@@ -13,16 +14,16 @@ class _MorePageState extends State<MorePage> {
1314
Widget build(BuildContext context) {
1415
return new ListView(
1516
children: <Widget>[
16-
getMorePageTitle(),
17-
getHeaderSection(),
18-
getButtonSection(),
19-
getQqGroupSection(),
20-
getThanksForApi(),
17+
buildMorePageTitle(),
18+
buildHeaderSection(),
19+
buildButtonSection(),
20+
buildQqGroupSection(),
21+
buildThanksForApi(),
2122
],
2223
);
2324
}
2425

25-
Widget getHeaderSection() {
26+
Widget buildHeaderSection() {
2627
return new Container(
2728
margin: new EdgeInsets.only(left: 15.0, right: 15.0),
2829
decoration: new BoxDecoration(
@@ -68,7 +69,7 @@ class _MorePageState extends State<MorePage> {
6869
);
6970
}
7071

71-
Widget getButtonSection() {
72+
Widget buildButtonSection() {
7273
return new Container(
7374
height: 120.0,
7475
margin: new EdgeInsets.only(top: 5.0),
@@ -182,7 +183,7 @@ class _MorePageState extends State<MorePage> {
182183
));
183184
}
184185

185-
Widget getQqGroupSection() {
186+
Widget buildQqGroupSection() {
186187
return new InkWell(
187188
onTap: () {
188189
onQQGroupClick();
@@ -212,7 +213,7 @@ class _MorePageState extends State<MorePage> {
212213
);
213214
}
214215

215-
Widget getThanksForApi() {
216+
Widget buildThanksForApi() {
216217
return new Container(
217218
padding:
218219
new EdgeInsets.only(left: 15.0, right: 15.0, top: 15.0, bottom: 15.0),
@@ -237,7 +238,7 @@ class _MorePageState extends State<MorePage> {
237238
);
238239
}
239240

240-
Widget getMorePageTitle() {
241+
Widget buildMorePageTitle() {
241242
return new Container(
242243
child: new Text(
243244
'更多',

lib/pages/movie_detail_page.dart

Lines changed: 2 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -130,26 +130,6 @@ class MovieDetailPageState extends State<MovieDetailPage> {
130130
});
131131
}
132132

133-
Widget _HeaderSection() {
134-
return new SizedBox(
135-
height: 270.0,
136-
child: DecoratedBox(
137-
decoration: new BoxDecoration(color: Colors.indigo),
138-
child: new Padding(
139-
padding: new EdgeInsets.only(top: 0.0),
140-
child: new Center(
141-
child: new Image.network(
142-
movieDetail.images.large,
143-
width: 144.0,
144-
height: 232.0,
145-
fit: BoxFit.cover,
146-
),
147-
),
148-
),
149-
),
150-
);
151-
}
152-
153133
// Header 布局
154134
Widget _blurHeaderSection(String imgUrl) {
155135
return new Stack(
@@ -258,6 +238,8 @@ class MovieDetailPageState extends State<MovieDetailPage> {
258238
),
259239
),
260240
new ScoreView(
241+
10.0,
242+
2.0,
261243
new Size(100.0, 20.0),
262244
movieDetail.rating.average,
263245
),

lib/utils/StarView.dart

Lines changed: 0 additions & 129 deletions
This file was deleted.

0 commit comments

Comments
 (0)