update
This commit is contained in:
@ -7,13 +7,17 @@ import 'package:rogapp/pages/index/index_controller.dart';
|
|||||||
|
|
||||||
class SearchController extends GetxController {
|
class SearchController extends GetxController {
|
||||||
|
|
||||||
List<GeoJsonFeatureCollection> searchResults = <GeoJsonFeatureCollection>[].obs;
|
List<GeoJsonFeature> searchResults = <GeoJsonFeature>[].obs;
|
||||||
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void onInit() {
|
void onInit() {
|
||||||
IndexController indexController = Get.find<IndexController>();
|
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();
|
super.onInit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,12 +1,29 @@
|
|||||||
import 'package:flutter/cupertino.dart';
|
import 'package:flutter/cupertino.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.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/pages/search/search_controller.dart';
|
||||||
|
import 'package:rogapp/widgets/bottom_sheet_new.dart';
|
||||||
|
|
||||||
class SearchPage extends StatelessWidget {
|
class SearchPage extends StatelessWidget {
|
||||||
SearchPage({Key? key}) : super(key: key);
|
SearchPage({Key? key}) : super(key: key);
|
||||||
|
|
||||||
SearchController searchController = Get.find<SearchController>();
|
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
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
@ -22,14 +39,30 @@ class SearchPage extends StatelessWidget {
|
|||||||
title: const CupertinoSearchTextField(),
|
title: const CupertinoSearchTextField(),
|
||||||
|
|
||||||
),
|
),
|
||||||
body: Obx(() =>
|
body:
|
||||||
|
//Obx(() =>
|
||||||
ListView.builder(
|
ListView.builder(
|
||||||
itemCount: searchController.searchResults.length,
|
itemCount: searchController.searchResults.length,
|
||||||
itemBuilder: (context, index){
|
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())
|
||||||
|
);
|
||||||
|
},
|
||||||
|
);
|
||||||
},
|
},
|
||||||
),
|
),
|
||||||
)
|
//)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -12,6 +12,7 @@ import 'package:rogapp/pages/loading/loading_page.dart';
|
|||||||
import 'package:rogapp/pages/login/login_page.dart';
|
import 'package:rogapp/pages/login/login_page.dart';
|
||||||
import 'package:rogapp/pages/permission/permission.dart';
|
import 'package:rogapp/pages/permission/permission.dart';
|
||||||
import 'package:rogapp/pages/register/register_page.dart';
|
import 'package:rogapp/pages/register/register_page.dart';
|
||||||
|
import 'package:rogapp/pages/search/search_binding.dart';
|
||||||
import 'package:rogapp/pages/search/search_page.dart';
|
import 'package:rogapp/pages/search/search_page.dart';
|
||||||
import 'package:rogapp/spa/spa_binding.dart';
|
import 'package:rogapp/spa/spa_binding.dart';
|
||||||
import 'package:rogapp/spa/spa_page.dart';
|
import 'package:rogapp/spa/spa_page.dart';
|
||||||
@ -98,6 +99,7 @@ class AppPages {
|
|||||||
GetPage(
|
GetPage(
|
||||||
name: Routes.SEARCH,
|
name: Routes.SEARCH,
|
||||||
page: () => SearchPage(),
|
page: () => SearchPage(),
|
||||||
|
binding: SearchBinding(),
|
||||||
)
|
)
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user