NewsDaily

所属分类:Flutter开发
开发工具:Dart
文件大小:123801KB
下载次数:0
上传日期:2020-04-12 15:31:37
上 传 者sh-1993
说明:  Flutter中的BLOC模式新闻应用程序
(News app in Flutter with BLOC pattern)

文件列表:
LICENSE (1075, 2019-02-06)
assetss (0, 2019-02-06)
assetss\NewsAppFlutterAsset_1.gif (32440918, 2019-02-06)
assetss\NewsAppFlutterAsset_2.jpeg (127384, 2019-02-06)
assetss\NewsAppFlutterAsset_3.jpeg (137466, 2019-02-06)
assetss\NewsAppFlutterAsset_4.jpeg (153380, 2019-02-06)
assetss\NewsAppFlutterAsset_5.gif (94293627, 2019-02-06)
news_app (0, 2019-02-06)
news_app\.metadata (303, 2019-02-06)
news_app\android (0, 2019-02-06)
news_app\android\app (0, 2019-02-06)
news_app\android\app\build.gradle (2513, 2019-02-06)
news_app\android\app\google-services.json (1021, 2019-02-06)
news_app\android\app\proguard-rules.pro (249, 2019-02-06)
news_app\android\app\src (0, 2019-02-06)
news_app\android\app\src\main (0, 2019-02-06)
news_app\android\app\src\main\AndroidManifest.xml (1987, 2019-02-06)
news_app\android\app\src\main\ic_launcher-web.png (26875, 2019-02-06)
news_app\android\app\src\main\java (0, 2019-02-06)
news_app\android\app\src\main\java\com (0, 2019-02-06)
news_app\android\app\src\main\java\com\kaparray (0, 2019-02-06)
news_app\android\app\src\main\java\com\kaparray\newsapp (0, 2019-02-06)
news_app\android\app\src\main\java\com\kaparray\newsapp\MainActivity.java (365, 2019-02-06)
news_app\android\app\src\main\res (0, 2019-02-06)
news_app\android\app\src\main\res\drawable (0, 2019-02-06)
news_app\android\app\src\main\res\drawable\launch_background.xml (434, 2019-02-06)
news_app\android\app\src\main\res\mipmap-anydpi-v26 (0, 2019-02-06)
news_app\android\app\src\main\res\mipmap-anydpi-v26\ic_launcher.xml (265, 2019-02-06)
news_app\android\app\src\main\res\mipmap-anydpi-v26\ic_launcher_round.xml (265, 2019-02-06)
news_app\android\app\src\main\res\mipmap-hdpi (0, 2019-02-06)
news_app\android\app\src\main\res\mipmap-hdpi\ic_launcher.png (3048, 2019-02-06)
news_app\android\app\src\main\res\mipmap-hdpi\ic_launcher_foreground.png (806, 2019-02-06)
news_app\android\app\src\main\res\mipmap-hdpi\ic_launcher_round.png (3048, 2019-02-06)
news_app\android\app\src\main\res\mipmap-mdpi (0, 2019-02-06)
news_app\android\app\src\main\res\mipmap-mdpi\ic_launcher.png (2037, 2019-02-06)
news_app\android\app\src\main\res\mipmap-mdpi\ic_launcher_foreground.png (618, 2019-02-06)
... ...

# NewsApp News app in Flutter with BLOC pattern This example uses a CustomScrollView, JSON Rest API, BottonNavigationBar,SliverList, ClipRRect, Card, Progress Indicator, NetworkImage, Card, Column, Row, Container, InkWell, BoxDecoration. ### Library * [*__rxdart__*](https://pub.dartlang.org/packages/rxdart) * [*__http__*](https://pub.dartlang.org/packages/http) * [*__webview_flutter__*](https://pub.dartlang.org/packages/webview_flutter) * [*__shared_preferences__*](https://pub.dartlang.org/packages/shared_preferences) * [*__share__*](https://pub.dartlang.org/packages/share) * [*__cloud_firestore__*](https://pub.dartlang.org/packages/cloud_firestore) * [*__uuid__*](https://pub.dartlang.org/packages/uuid) * [*__dynamic_theme__*](https://pub.dartlang.org/packages/dynamic_theme) * [*__flutter_picker__*](https://pub.dartlang.org/packages/flutter_picker) * [*__flutter_material_color_picker__*](https://pub.dartlang.org/packages/flutter_material_color_picker) ### Bloc pattern *I used this pattern to design this application.* ```dart class NewsBloc { final _repository = Repository(); final _newsFetcher = PublishSubject(); final _newsSearchFetcher = PublishSubject(); final _newsLikeFetcher = PublishSubject(); Observable get allNews => _newsFetcher.stream; Observable get searchNews => _newsSearchFetcher.stream; Observable get likeNews => _newsLikeFetcher.stream; fetchLikedNews() async { NewsModel newsModel = await _repository.fetchLikedNews(); _newsLikeFetcher.sink.add(newsModel); } fetchAllNews() async { NewsModel newsModel = await _repository.fetchAllNews(); _newsFetcher.sink.add(newsModel); } fetchSearchNews() async { NewsModel newsModel = await _repository.fetchSearchNews(); _newsSearchFetcher.sink.add(newsModel); } // Set and delete from Firestore liked addFavorit(val) async => _repository.addFavorit(val); deliteFavorit(val) async => _repository.deliteFavorit(val); dispose() { _newsLikeFetcher.close(); _newsFetcher.close(); _newsSearchFetcher.close(); } } final bloc = NewsBloc(); ``` ### Screenshots

## Built With * [Flutter](https://flutter.io) - Crossplatform App Development Framework ### License Released under the [MIT license](https://github.com/kaparray/NewsApp/blob/master/LICENSE) ### Author Adeshchenko Kirill (Cyrill) ([@kaparray](https://www.linkedin.com/in/kirill-adeshchenko-b86362161/))

近期下载者

相关文件


收藏者