This commit is contained in:
2022-07-21 09:05:28 +05:30
parent 25410a7ebd
commit e32401b570
3 changed files with 44 additions and 5 deletions

View File

@ -7,13 +7,17 @@ import 'package:rogapp/pages/index/index_controller.dart';
class SearchController extends GetxController {
List<GeoJsonFeatureCollection> searchResults = <GeoJsonFeatureCollection>[].obs;
List<GeoJsonFeature> searchResults = <GeoJsonFeature>[].obs;
@override
void onInit() {
IndexController indexController = Get.find<IndexController>();
indexController.locations.addAll(indexController.locations);
for(int i=0; i<= indexController.locations[0].collection.length - 1; i++){
GeoJsonFeature p = indexController.locations[0].collection[i];
searchResults.add(p);
}
super.onInit();
}

View File

@ -1,12 +1,29 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';
import 'package:rogapp/pages/index/index_controller.dart';
import 'package:rogapp/pages/search/search_controller.dart';
import 'package:rogapp/widgets/bottom_sheet_new.dart';
class SearchPage extends StatelessWidget {
SearchPage({Key? key}) : super(key: key);
SearchController searchController = Get.find<SearchController>();
IndexController indexController = Get.find<IndexController>();
Image getImage(int index){
if(searchController.searchResults[index].properties!["photos"] == null || searchController.searchResults[index].properties!["photos"] == ""){
return Image(image: AssetImage('assets/images/empty_image.png'));
}
else{
return Image(
image: NetworkImage(searchController.searchResults[index].properties!["photos"]),
errorBuilder: (BuildContext context, Object exception, StackTrace? stackTrace) {
return Image.asset("assets/images/empty_image.png");
},
);
}
}
@override
Widget build(BuildContext context) {
@ -22,14 +39,30 @@ class SearchPage extends StatelessWidget {
title: const CupertinoSearchTextField(),
),
body: Obx(() =>
body:
//Obx(() =>
ListView.builder(
itemCount: searchController.searchResults.length,
itemBuilder: (context, index){
return Text("hello");
return ListTile(
title: Text(searchController.searchResults[index].properties!["location_name"]),
subtitle: Text(searchController.searchResults[index].properties!["category"]),
leading: getImage(index),
onTap: (){
indexController.currentFeature.clear();
indexController.currentFeature.add(searchController.searchResults[index]);
Get.back();
showModalBottomSheet(
isScrollControlled: true,
context: context,
//builder: (context) => BottomSheetWidget(),
builder:((context) => BottomSheetNew())
);
},
);
},
),
)
//)
);
}
}