CopyPastor

Detecting plagiarism made easy.

Score: 0.8017552495002747; Reported for: String similarity Open both answers

Possible Plagiarism

Plagiarized on 2021-11-13
by Yeasin Sheikh

Original Post

Original - Posted on 2020-09-09
by Salim Murshed



            
Present in both answers; Present only in the new answer; Present only in the old answer;

First error is happening because of not handling the states of `Query`. In order to do that on `builder:`
```dart builder: ( QueryResult result, { Refetch? refetch, FetchMore? fetchMore, }) { if (result.hasException) { return Text(result.exception.toString()); } if (result.isLoading) { return Column( children: [ Expanded( child: handleResult(data)), // show data while loading const Center( child: CircularProgressIndicator(), ), ], ); } data.addAll(result.data!['homeview']['Details'] ?? []); return handleResult(data); }, ```
All we need now to increase the `pageNum` to get more data. I'm using load more button, Better will be creating the load button end of list by increasing itemLength+=1.
```dart
class MoreEpd extends StatefulWidget { final String moreId; const MoreEpd({Key? key, required this.moreId}) : super(key: key);
@override _MoreEpdState createState() => _MoreEpdState(); }
class _MoreEpdState extends State<MoreEpd> { double pageWidth = 0; double pageHeigh = 0; int pageNum = 0;
final String leftArrow = 'assets/icons/left-arrow.svg'; String getSearchResult = r''' query homeview( $moreId: ID!, $page: Int! ){ homeview(HM_ID: $moreId, page: $page){ HM_ID HM_Type_ID HM_Type_Name HM_NAME Priority Details{ HM_Det_ID HM_ID Ep_ID Pod_ID Link Image title Pod_title } } } ''';
var data = [];
@override Widget build(BuildContext context) { pageWidth = MediaQuery.of(context).size.width; pageHeigh = MediaQuery.of(context).size.height; return Container( child: Column( children: [ Expanded( child: Query( options: QueryOptions( document: gql(getSearchResult), variables: {'moreId': widget.moreId, 'page': pageNum}, ), builder: ( QueryResult result, { Refetch? refetch, FetchMore? fetchMore, }) { if (result.hasException) { return Text(result.exception.toString()); } if (result.isLoading) { return Column( children: [ Expanded( child: handleResult(data)), // show data while loading const Center( child: CircularProgressIndicator(), ), ], ); } data.addAll(result.data!['homeview']['Details'] ?? []); return handleResult(data); }, ), ), ElevatedButton( onPressed: () { setState(() { pageNum++; }); }, child: Text("load more $pageNum"), ) ], ), ); }
Widget handleResult(var data) { return ListView.builder( padding: EdgeInsets.only(top: 15), shrinkWrap: true, itemCount: data.length, itemBuilder: (context, index) { return InkWell( onTap: () {}, child: Padding( padding: EdgeInsets.only( top: pageWidth * 0.0, right: pageWidth * 0.08, left: pageWidth * 0.08, bottom: pageWidth * 0.0), child: Container( child: Stack( children: [ Column( children: [ Padding( padding: EdgeInsets.only(bottom: pageWidth * 0.060), child: Row( children: [ Padding( padding: EdgeInsets.only(left: pageWidth * 0.01), child: Container( // alignment: Alignment.centerRight, width: pageWidth * 0.128, height: pageWidth * 0.128, decoration: BoxDecoration( // image: DecorationImage( // fit: BoxFit.cover, // image: NetworkImage( // data[index]['Image'], // )), borderRadius: BorderRadius.all(Radius.circular(15)), // color: Colors.redAccent, border: Border.all( // color: MyColors.lightGrey, width: 1, )), ), ), Expanded( child: Row( children: [ Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Container( width: pageWidth * 0.5, alignment: Alignment.centerRight, child: Text( data[index]['title'], textAlign: TextAlign.right, overflow: TextOverflow.ellipsis, maxLines: 1, // softWrap: true, style: TextStyle( // fontWeight: FontWeight.bold, fontSize: 14, ), ), ), ], ), ], ), ) ], ), ), ], ), ], ), ), ), ); }); } }
```
Please check the full code edit from your code. Actually you are using two FloatingActionButton. So you need to use two heroTag with different name. I already added in the code. No problem with NewTrip class.
import 'package:flutter/material.dart'; class MyHomePage extends StatelessWidget { @override Widget build(BuildContext context) { return MaterialApp( home: Page0(), ); } } class Page0 extends StatefulWidget { @override _Page0State createState() => _Page0State(); } class _Page0State extends State { @override Widget build(BuildContext context) { return Scaffold( backgroundColor: Color(0xFF493597), body: ListView( children: [ Padding( padding: EdgeInsets.only(top: 15.0, left: 10.0), ), SizedBox( height: 25.0, ), Padding( padding: EdgeInsets.only(left: 40.0), child: Row( children: [ Text( 'Expense', style: TextStyle( fontFamily: 'Montserrat', color: Colors.white, fontWeight: FontWeight.bold, fontSize: 25.0), ), SizedBox( width: 10.0, ), Text( 'What', style: TextStyle( fontFamily: 'Montserrat', color: Colors.white, fontSize: 25.0, ), ), ], ), ), SizedBox(height: 60.0), Container( margin: EdgeInsets.only( left: 10.0, right: 10.0, ), height: MediaQuery.of(context).size.height - 150, decoration: BoxDecoration( color: Color(0xFFFCFCFC), borderRadius: BorderRadius.only( topLeft: Radius.circular(75.0), topRight: Radius.circular(75.0), ), ), child: ListView( primary: false, padding: EdgeInsets.only( left: 15.0, right: 20.0, top: 25.0, ), children: [ Padding( padding: const EdgeInsets.only( top: 30.0, ), child: Column( children: [ //greeting text Row( children: [ Expanded( child: Center( child: Text( 'Hello! :)', style: TextStyle( fontFamily: 'Permanent-Marker', color: Colors.black, fontSize: 30.0, ), ), ), ), ], ), SizedBox( height: 30.0, ), //add button Row(children: [ Expanded( flex: 1, child: Container( height: 100.0, width: 100.0, child: FittedBox( child: FloatingActionButton( heroTag: "btn", elevation: 10.0, backgroundColor: Colors.white, child: Icon( Icons.add, color: Colors.black, ), onPressed: () { Navigator.push( context, MaterialPageRoute( builder: (context) => NewTrip()), ); }, ), ), ), ), //add text Expanded( flex: 1, child: Text( 'New trip', style: TextStyle( fontFamily: 'Nanum', fontSize: 30.0, ), ), ), ]), SizedBox( height: 30.0, ), //previous trip button Row( children: [ Expanded( flex: 1, child: Container( height: 100.0, width: 100.0, child: FittedBox( child: FloatingActionButton( heroTag: "btn1", elevation: 10.0, backgroundColor: Colors.white, onPressed: () {}, child: Icon( Icons.assessment, color: Colors.black, ), ), ), ), ), //previous trip text Expanded( flex: 1, child: Text( 'Previous trips', style: TextStyle( fontFamily: 'Nanum', fontSize: 30.0, ), ), ) ], ), SizedBox( height: 50.0, ), ], ), ), ], ), ), ], ), ); } }
NewTrip class
class NewTrip extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( body: Text('NEW TRIP'), ); } }


        
Present in both answers; Present only in the new answer; Present only in the old answer;