69 lines
1.9 KiB
Dart
Executable File
69 lines
1.9 KiB
Dart
Executable File
import '/components/card35_news_article_widget.dart';
|
|
import '/components/card38_location_details_widget.dart';
|
|
import '/flutter_flow/flutter_flow_theme.dart';
|
|
import '/flutter_flow/flutter_flow_util.dart';
|
|
import '/flutter_flow/flutter_flow_widgets.dart';
|
|
import 'package:flutter/material.dart';
|
|
import 'package:font_awesome_flutter/font_awesome_flutter.dart';
|
|
import 'package:google_fonts/google_fonts.dart';
|
|
import 'package:provider/provider.dart';
|
|
import 'news_model.dart';
|
|
export 'news_model.dart';
|
|
|
|
class NewsWidget extends StatefulWidget {
|
|
const NewsWidget({super.key});
|
|
|
|
@override
|
|
State<NewsWidget> createState() => _NewsWidgetState();
|
|
}
|
|
|
|
class _NewsWidgetState extends State<NewsWidget> {
|
|
late NewsModel _model;
|
|
|
|
final scaffoldKey = GlobalKey<ScaffoldState>();
|
|
|
|
@override
|
|
void initState() {
|
|
super.initState();
|
|
_model = createModel(context, () => NewsModel());
|
|
}
|
|
|
|
@override
|
|
void dispose() {
|
|
_model.dispose();
|
|
|
|
super.dispose();
|
|
}
|
|
|
|
@override
|
|
Widget build(BuildContext context) {
|
|
return GestureDetector(
|
|
onTap: () => FocusScope.of(context).unfocus(),
|
|
child: Scaffold(
|
|
key: scaffoldKey,
|
|
backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
|
|
body: SafeArea(
|
|
top: true,
|
|
child: SingleChildScrollView(
|
|
child: Column(
|
|
mainAxisSize: MainAxisSize.max,
|
|
children: [
|
|
wrapWithModel(
|
|
model: _model.card38LocationDetailsModel,
|
|
updateCallback: () => safeSetState(() {}),
|
|
child: Card38LocationDetailsWidget(),
|
|
),
|
|
wrapWithModel(
|
|
model: _model.card35NewsArticleModel,
|
|
updateCallback: () => safeSetState(() {}),
|
|
child: Card35NewsArticleWidget(),
|
|
),
|
|
],
|
|
),
|
|
),
|
|
),
|
|
),
|
|
);
|
|
}
|
|
}
|