Created
January 22, 2014 19:20
-
-
Save jgold6/8565510 to your computer and use it in GitHub Desktop.
Monotouch.Dialog ReloadComplete() call causes topmost Element to scroll off screen.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| public void DemoRefresh () | |
| { | |
| int i = 0; | |
| var root = new RootElement ("Pull to Refresh"){ | |
| new Section () { | |
| new MultilineElement ("Pull from the top to add\na new item at the bottom\nThen wait 1 second") | |
| } | |
| }; | |
| var dvc = new DialogViewController (root, true); | |
| // | |
| // After the DialogViewController is created, but before it is displayed | |
| // Assign to the RefreshRequested event. The event handler typically | |
| // will queue a network download, or compute something in some thread | |
| // when the update is complete, you must call "ReloadComplete" to put | |
| // the DialogViewController in the regular mode | |
| // | |
| dvc.RefreshRequested += delegate { | |
| // Wait 3 seconds, to simulate some network activity | |
| NSTimer.CreateScheduledTimer (1, delegate { | |
| root [0].Add (new StringElement ("Added " + (++i))); | |
| root [0].Add (new StringElement ("Added " + (++i))); | |
| // Notify the dialog view controller that we are done | |
| // this will hide the progress info | |
| dvc.ReloadComplete (); | |
| dvc.TableView.SetContentOffset(new System.Drawing.PointF(0,-60), true); // Workaround, compensates for the 60 pix that ReloadComplete() scrolls the content up. | |
| }); | |
| }; | |
| dvc.Style = UITableViewStyle.Plain; | |
| navigation.PushViewController (dvc, true); | |
| dvc.TriggerRefresh(); | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment