У меня есть список элементов, когда я нажимаю на элемент, он будет go, чтобы перейти к следующему экрану, чтобы я мог показать соответствующую информацию о выбранном элементе, когда я пытался передать ему, все данные объекта передаются следующему страница
Json Данные, которые я показываю, но мне нужно передать только _id, который содержит объект Area_Id, на следующий экран
"Area_Id": {
"_id": "5e27ffbccde0456455857c27",
"Area_Name": "Morning meeting photo"
},
"AreaList": [
{
"Report_Time_Type": 1,
"WeakDay": "Friday",
"_id": "5e27ffc0cde0456455857c4f",
"Branch_Id": {
"_id": "5e27ffb7cde0456455857c21",
"Name": "CHERTHALA",
"Order_Id": 4
},
"Section_Id": {
"_id": "5e27ffb9cde0456455857c25",
"Section_Head": "Sales",
"Order_Id": 1
},
"Area_Id": {
"_id": "5e27ffbccde0456455857c27",
"Area_Name": "Morning meeting photo"
},
"From_Time": "9:00 AM",
"To_Time": "9:05 AM"
},
]
Это первая страница Просмотр кода флаттера
return Column(
children: <Widget>[
GestureDetector(
onTap: () {
Navigator.push(
context,
MaterialPageRoute(
builder: (context) => ImageScreen(data.Area_Id)));
},
child: Card(
elevation: 15,
child: Column(
mainAxisSize: MainAxisSize.max,
children: <Widget>[
Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: <Widget>[
Expanded(
flex: 3,
child: Padding(
padding: EdgeInsets.all(30),
child: Text(
data.Area_Name.toString(),
style: TextStyle(
fontWeight: FontWeight.bold,
fontSize: 14,
color: Colors.black87),
),
),
),
],
)
],
),
),
),
Future<String> getDailyList() async {
Future dailystatus = SharedPrefrence().getbranchId();
Future daily = SharedPrefrence().getsectionId();
Future token = SharedPrefrence().getToken();
dailystatus.then((data) async {
var branchid = data;
daily.then((data) async {
var section_id = data;
token.then((data) async {
var token = data;
var response = await http.post(Urls.BRANCH_MAPPER,
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer $token",
},
body: json.encode({
"Report_Time_Type": "1",
"Branch_Id": branchid,
"Section_Id": section_id,
}));
print('Respone ${response.body}');
if (response.statusCode == 200) {
try {
var resp = response.body;
Map<String, dynamic> value = json.decode(resp);
var report = value['AreaList'];
for (int i = 0; i < report.length; i++) {
var data = report[i];
var areaName = data["Area_Id"]["Area_Name"];
Dailylist.add(DailyModel.fromJson(data, areaName));
}
setState(() {
array_lenth = Dailylist.length;
});
} catch (e) {
e.toString();
}
}
});
});
});
}
}
и эта модель первой страницы
class DailyModel {
String id;
String From_Time;
String To_Time;
String Area_Name;
String WeakDay;
String Report_Time_Type;
String Area_Id;
DailyModel({this.id,this.From_Time,this.To_Time,this.Area_Name,this.WeakDay,this.Report_Time_Type,this.Area_Id});
DailyModel.fromJson(json, areaName)
: id = json['_id'].toString(),
From_Time = json['From_Time'].toString(),
To_Time = json['To_Time'].toString(),
WeakDay = json['WeakDay'].toString(),
Area_Id = json['_Id'].toString(),
Report_Time_Type = json['Report_Time_Type'].toString(),
Area_Name = areaName;
}