protected override void OnNavigatedTo(NavigationEventArgs e) { base.OnNavigatedTo(e); if (e.NavigationMode != NavigationMode.Back) { var source = new PropertyDataSource(new JsonWebPropertySearch(new MarshalInvokeService())); var geolocationService = new GeoLocationService(); var statePersistence = new StatePersistenceService(); PropertyCrossPersistentState state = statePersistence.LoadState(); _presenter = new PropertyCrossPresenter(state, source, new NavigationService(NavigationService), geolocationService); _presenter.SetView(this); } }
// // This method is invoked when the application has loaded and is ready to run. In this // method you should instantiate the window, load the UI into it and then make the window // visible. // // You have 17 seconds to return from this method, or iOS will terminate your application. // public override bool FinishedLaunching(UIApplication app, NSDictionary options) { window = new UIWindow (UIScreen.MainScreen.Bounds); navigationController = new UINavigationController (); var source = new PropertyDataSource (new JsonWebPropertySearch (new MarshalInvokeService())); var geolocationService = new GeoLocationService (); var statePersistence = new StatePersistenceService (); PropertyCrossPersistentState state = statePersistence.LoadState (); var presenter = new PropertyCrossPresenter (state, source, new NavigationService (navigationController), geolocationService); var controller = new PropertyCrossViewController (presenter); navigationController.PushViewController(controller, false); window.RootViewController = navigationController; // make the window visible window.MakeKeyAndVisible (); return true; }
protected override void OnCreate(Bundle bundle) { base.OnCreate (bundle); var app = PropertyCrossApplication.GetApplication(this); app.CurrentActivity = this; var uiMarshal = new MarshalInvokeService(app); var source = new PropertyDataSource(new JsonWebPropertySearch(uiMarshal)); geoLocationService = new GeoLocationService( (Android.Locations.LocationManager)GetSystemService(Context.LocationService), uiMarshal); var stateService = new StatePersistenceService(app); PropertyCrossPersistentState state = stateService.LoadState(); SetContentView (Resource.Layout.PropertyCrossView); searchText = FindViewById<EditText>(Resource.Id.search); searchText.TextChanged += delegate(object sender, Android.Text.TextChangedEventArgs e) { String searchTerm = searchText.Text; if (searchTerm != null) { searchTerm = searchTerm.Trim(); SearchTextChanged(this, new SearchTextChangedEventArgs(searchTerm)); } }; searchText.SetOnEditorActionListener(this); myLocationButton = FindViewById<Button>(Resource.Id.use_location); myLocationButton.Click += LocationButton_Clicked; startSearchButton = (Button) FindViewById(Resource.Id.do_search); startSearchButton.Click += StartSearchButton_Clicked; messageText = (TextView) FindViewById(Resource.Id.mainview_message); resultsHeader = (TextView) FindViewById(Resource.Id.results_header); resultsList = (ListView) FindViewById(Resource.Id.results_list); resultsList.ItemClick += ResultsListItem_Clicked; resultsList.Adapter = new RecentSearchAdapter(this, new List<RecentSearch>()); loadingAnimation = AnimationUtils.LoadAnimation(this, Resource.Animation.loading_rotate); loadingAnimation.RepeatMode = RepeatMode.Restart; presenter = new PropertyCrossPresenter(state, source, new NavigationService(app), geoLocationService); presenter.SetView(this); app.Presenter = presenter; }