提交 a17607dd authored 作者: yueweilu's avatar yueweilu

协议 页 title

上级 f197e47e
...@@ -210,13 +210,13 @@ class _LoginPageState extends State<LoginPage> { ...@@ -210,13 +210,13 @@ class _LoginPageState extends State<LoginPage> {
GestureDetector( GestureDetector(
child: Text('《用户协议》',style: TextStyle(color: Colours.cBlue,fontSize:14.w,height: 1.4)), child: Text('《用户协议》',style: TextStyle(color: Colours.cBlue,fontSize:14.w,height: 1.4)),
onTap: (){ onTap: (){
context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserAgreement'}); context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserAgreement','title':'用户协议'});
}, },
), ),
GestureDetector( GestureDetector(
child: Text('《隐私政策》',style: TextStyle(color: Colours.cBlue,fontSize:14.w,height: 1.4)), child: Text('《隐私政策》',style: TextStyle(color: Colours.cBlue,fontSize:14.w,height: 1.4)),
onTap: (){ onTap: (){
context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserPriAgreement'}); context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserPriAgreement','title':'隐私政策'});
}, },
), ),
], ],
......
...@@ -58,7 +58,7 @@ class _AboutPageState extends State<AboutPage> { ...@@ -58,7 +58,7 @@ class _AboutPageState extends State<AboutPage> {
GestureDetector( GestureDetector(
child: Text('《用户协议》',textAlign: TextAlign.right,style: TextStyle(fontSize: 10.w,color: Color(0xFF2A82D9)),), child: Text('《用户协议》',textAlign: TextAlign.right,style: TextStyle(fontSize: 10.w,color: Color(0xFF2A82D9)),),
onTap: (){ onTap: (){
context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserAgreement'}); context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserAgreement','title':'用户协议'});
}, },
), ),
Gaps.vGaps15, Gaps.vGaps15,
...@@ -67,7 +67,7 @@ class _AboutPageState extends State<AboutPage> { ...@@ -67,7 +67,7 @@ class _AboutPageState extends State<AboutPage> {
GestureDetector( GestureDetector(
child: Text('《隐私协议》',textAlign: TextAlign.left,style: TextStyle(fontSize: 10.w,color: Color(0xFF2A82D9))), child: Text('《隐私协议》',textAlign: TextAlign.left,style: TextStyle(fontSize: 10.w,color: Color(0xFF2A82D9))),
onTap:(){ onTap:(){
context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserPriAgreement'}); context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserPriAgreement','title':'隐私政策'});
} , } ,
) )
], ],
......
...@@ -70,7 +70,7 @@ class _CoinRechargePageState extends State<CoinRechargePage> with AutomaticKeepA ...@@ -70,7 +70,7 @@ class _CoinRechargePageState extends State<CoinRechargePage> with AutomaticKeepA
Gaps.vGaps15, Gaps.vGaps15,
GestureDetector( GestureDetector(
onTap: (){ onTap: (){
context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserRechargeAgreement'}); context.pushNamed(Routes.terms,queryParameters: {'url':'$kServerUrl$kUserRechargeAgreement','title':'用户充值协议'});
}, },
child: RichText(text: TextSpan( child: RichText(text: TextSpan(
children: [ children: [
......
part of user_discuss_des; part of user_discuss_des;
class BuildDiscuss extends StatelessWidget { class BuildDiscuss extends StatefulWidget {
final DiscussModel model; final DiscussModel model;
const BuildDiscuss({ const BuildDiscuss({
Key? key, Key? key,
required this.model required this.model
}) : super(key: key); }) : super(key: key);
@override
State<BuildDiscuss> createState() => _BuildDiscussState();
}
class _BuildDiscussState extends State<BuildDiscuss> {
final FocusNode _focusNode = FocusNode();
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Container( return Container(
...@@ -34,7 +41,7 @@ class BuildDiscuss extends StatelessWidget { ...@@ -34,7 +41,7 @@ class BuildDiscuss extends StatelessWidget {
height: 1.5.w, height: 1.5.w,
color: Colours.c3, color: Colours.c3,
)), )),
TextSpan(text: model.title,style: TextStyle( TextSpan(text: widget.model.title,style: TextStyle(
fontSize: 14.w, fontSize: 14.w,
height: 1.5.w, height: 1.5.w,
color: Colours.c3, color: Colours.c3,
...@@ -47,10 +54,10 @@ class BuildDiscuss extends StatelessWidget { ...@@ -47,10 +54,10 @@ class BuildDiscuss extends StatelessWidget {
height: 0.5.w, height: 0.5.w,
color: Colours.cF2, color: Colours.cF2,
), ),
_buildItem(model), _buildItem(widget.model),
Container( Container(
margin:EdgeInsets.only(left: 15.w), margin:EdgeInsets.only(left: 15.w),
child: _buildListView(model.commentAll != null ? model.commentAll!:[]) child: _buildListView(widget.model.commentAll != null ? widget.model.commentAll!:[])
), ),
Gaps.vGaps13, Gaps.vGaps13,
Container( Container(
...@@ -60,8 +67,8 @@ class BuildDiscuss extends StatelessWidget { ...@@ -60,8 +67,8 @@ class BuildDiscuss extends StatelessWidget {
child:Column( child:Column(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Text(model.chapterName??'',style: TextStyle(fontSize: 12.w,height: 1.5,color: Colours.c9),), Text(widget.model.chapterName??'',style: TextStyle(fontSize: 12.w,height: 1.5,color: Colours.c9),),
Text('内容:${model.quoteContent??''}',style: TextStyle(fontSize: 12.w,height: 1.5,color: Colours.c9),), Text('内容:${widget.model.quoteContent??''}',style: TextStyle(fontSize: 12.w,height: 1.5,color: Colours.c9),),
], ],
) )
) )
...@@ -70,7 +77,6 @@ class BuildDiscuss extends StatelessWidget { ...@@ -70,7 +77,6 @@ class BuildDiscuss extends StatelessWidget {
); );
} }
Widget _buildItem(DiscussModel model,{int type =0}){ Widget _buildItem(DiscussModel model,{int type =0}){
return Row( return Row(
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
...@@ -138,11 +144,16 @@ class BuildDiscuss extends StatelessWidget { ...@@ -138,11 +144,16 @@ class BuildDiscuss extends StatelessWidget {
Gaps.hGaps15, Gaps.hGaps15,
Row( Row(
children: [ children: [
SizedBox( GestureDetector(
height: 15.w, onTap:(){
width: 15.w, _showKeyboard(context);
// color: Colors.yellow, },
child: Image.asset('assets/images/discuss_big.png'), child: Container(
height: 25.w,
width: 25.w,
color: Colors.yellow,
child: Image.asset('assets/images/reply.png'),
),
), ),
Text(model.replyNum.toString(),style: TextStyle(fontSize:12.w,height: 1.5,color: Colours.c9)) Text(model.replyNum.toString(),style: TextStyle(fontSize:12.w,height: 1.5,color: Colours.c9))
], ],
...@@ -168,7 +179,6 @@ class BuildDiscuss extends StatelessWidget { ...@@ -168,7 +179,6 @@ class BuildDiscuss extends StatelessWidget {
); );
} }
// 图片 // 图片
Widget _buildImageGridView(){ Widget _buildImageGridView(){
return GridView.builder( return GridView.builder(
...@@ -182,52 +192,47 @@ class BuildDiscuss extends StatelessWidget { ...@@ -182,52 +192,47 @@ class BuildDiscuss extends StatelessWidget {
childAspectRatio: 1 childAspectRatio: 1
), ),
itemBuilder: (BuildContext context, int index) { itemBuilder: (BuildContext context, int index) {
MediaModel? mediaModel = model.content?.image?[index]; MediaModel? mediaModel = widget.model.content?.image?[index];
return CustomImage.network(url: model?.content?.image?[index].content??'',fit: BoxFit.cover,); return CustomImage.network(url: widget.model?.content?.image?[index].content??'',fit: BoxFit.cover,);
// return Container( // return Container(
// color: Colors.red, // color: Colors.red,
// ); // );
}, },
itemCount: model.content?.image?.length, itemCount: widget.model.content?.image?.length,
// itemCount: 2, // itemCount: 2,
); );
} }
// Widget _buildAudioListView(){ void _showKeyboard(BuildContext context) {
// return ListView.builder( _focusNode.requestFocus();
// physics: const NeverScrollableScrollPhysics(), FocusScope.of(context).requestFocus(_focusNode);
// shrinkWrap: true, Overlay.of(context)?.insert(
// itemBuilder: (BuildContext context, int index) { OverlayEntry(
// MediaModel mediaModel = model.noteContent!.audio![index]; builder: (context) => Positioned(
// return Container( bottom: MediaQuery.of(context).viewInsets.bottom,
// height: 20.w, left: 0,
// margin: EdgeInsets.only(right: 130.w), right: 0,
// child: Container( child: Container(
// margin: EdgeInsets.only(top: 5.w), color: Colors.white,
// padding: EdgeInsets.only(right:20.w,left: 10.w), child: Padding(
// decoration: BoxDecoration( padding: const EdgeInsets.all(8.0),
// borderRadius: BorderRadius.circular(10.w), child: TextField(
// color: Colours.cF9, focusNode: _focusNode,
// ), decoration: InputDecoration(
// child: Row( hintText: '在这里回复',
// // mainAxisSize: MainAxisSize.min, filled: true,
// mainAxisAlignment:MainAxisAlignment.spaceBetween, fillColor: Colors.grey[200],
// children: [ border: OutlineInputBorder(
// GestureDetector( borderRadius: BorderRadius.circular(10.0),
// onTap: (){ ),
// if (onTapAudio !=null) onTapAudio!(mediaModel); ),
// }, ),
// child: Image.asset('assets/images/audio.png') ),
// ), ),
// Text('0:00/${mediaModel.duration}',style: TextStyle(fontSize: 10.w,height: 1.4,color: Colours.c9),) ),
// ], ),
// ), );
// ), }
// );
// },
// itemCount: model.noteContent?.audio?.length,
// );
// }
} }
...@@ -4,16 +4,18 @@ part of user_terms; ...@@ -4,16 +4,18 @@ part of user_terms;
class TermsPage extends StatelessWidget { class TermsPage extends StatelessWidget {
final String url ; final String url ;
final String title ;
const TermsPage({ const TermsPage({
Key? key, Key? key,
required this.url required this.url,
required this.title
}) : super(key: key); }) : super(key: key);
@override @override
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Scaffold( return Scaffold(
appBar: AppBar( appBar: AppBar(
title: const Text('用户协议'), title: Text(title),
), ),
body: InAppWebView( body: InAppWebView(
initialUrlRequest: URLRequest( initialUrlRequest: URLRequest(
......
...@@ -225,6 +225,7 @@ abstract class Routes { ...@@ -225,6 +225,7 @@ abstract class Routes {
key: state.pageKey, key: state.pageKey,
child: TermsPage( child: TermsPage(
url: state.uri.queryParameters['url'].toString(), url: state.uri.queryParameters['url'].toString(),
title: state.uri.queryParameters['title'].toString(),
) )
) )
), ),
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论