Exemplo n.º 1
0
        public PropertyCrossPersistentState LoadState()
        {
            PropertyCrossPersistentState state = null;

            try
            {
                // load from isolated storage
                using (var store = IsolatedStorageFile.GetUserStoreForApplication())
                    using (var stream = new IsolatedStorageFileStream("data.txt",
                                                                      FileMode.OpenOrCreate, FileAccess.Read, store))
                        using (var reader = new StreamReader(stream))
                        {
                            if (!reader.EndOfStream)
                            {
                                var serializer = new XmlSerializer(typeof(PropertyCrossPersistentState));
                                state = (PropertyCrossPersistentState)serializer.Deserialize(reader);

                                // set the persistence service for the newly loaded state
                                state.PersistenceService = this;
                            }
                        }
            }
            catch
            {
            }

            // if we cannot retrieve the state, create a new state object
            if (state == null)
            {
                state = new PropertyCrossPersistentState(this);
            }

            return(state);
        }
Exemplo n.º 2
0
        public PropertyCrossPersistentState LoadState()
        {
            PropertyCrossPersistentState state = null;

            try
            {
                using (var stream = application.CurrentActivity.OpenFileInput(FileName))
                    using (var reader = new StreamReader(stream))
                    {
                        if (!reader.EndOfStream)
                        {
                            XmlSerializer serializer = new XmlSerializer(typeof(PropertyCrossPersistentState));
                            state = (PropertyCrossPersistentState)serializer.Deserialize(reader);
                            state.PersistenceService = this;
                        }
                    }
            }
            catch
            {
            }

            if (state == null)
            {
                state = new PropertyCrossPersistentState(this);
            }
            return(state);
        }
Exemplo n.º 3
0
 public void SaveState(PropertyCrossPersistentState state)
 {
     using (var stream = application.CurrentActivity.OpenFileOutput(FileName, FileCreationMode.Private))
     {
         XmlSerializer serializer = new XmlSerializer(typeof(PropertyCrossPersistentState));
         serializer.Serialize(stream, state);
     }
 }
 public void SaveState(PropertyCrossPersistentState state)
 {
     using (var writer = new StreamWriter(_filepath))
     {
         var serializer = new XmlSerializer(typeof(PropertyCrossPersistentState));
         serializer.Serialize(writer, state);
     }
 }
Exemplo n.º 5
0
 public void SaveState(PropertyCrossPersistentState state)
 {
     // persist the data using isolated storage
     using (var store = IsolatedStorageFile.GetUserStoreForApplication())
         using (var stream = new IsolatedStorageFileStream("data.txt",
                                                           FileMode.Create, FileAccess.Write, store))
         {
             var serializer = new XmlSerializer(typeof(PropertyCrossPersistentState));
             serializer.Serialize(stream, state);
         }
 }
Exemplo n.º 6
0
        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);
            }
        }
        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              = (EditText)FindViewById(Resource.Id.search);
            searchText.TextChanged += SearchText_Changed;
            searchText.SetOnEditorActionListener(this);

            myLocationButton        = (Button)FindViewById(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;
        }
        public PropertyCrossPersistentState LoadState()
        {
            PropertyCrossPersistentState state = null;

            try
            {
                using (var reader = new StreamReader(_filepath))
                {
                    var serializer = new XmlSerializer(typeof(PropertyCrossPersistentState));
                    state = (PropertyCrossPersistentState)serializer.Deserialize(reader);
                    state.PersistenceService = this;
                }
            }
            catch
            {
            }

            if (state == null)
            {
                state = new PropertyCrossPersistentState(this);
            }

            return(state);
        }
Exemplo n.º 9
0
        //
        // 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);
        }