2013-03-10 3 views
0

Я хочу добавить заставку в проект monotouch/xamarin.Monotouch navigate from splash screen

Заставка должна выполнить некоторую логику, а затем перейти к пользователю на один из двух экранов, войти в экран/войти в экран.

Каков правильный способ сделать это в моноточе? (Я новичок в monotouch и IOS).

+0

См. Ответ http://stackoverflow.com/questions/14621022/splash-screen-with-heavy-codes-in-monotouch/14671023#14671023 и пример https://bitbucket.org/MaximKorobov/monotouch-splashtest –

ответ

2

Как я хотел бы сделать это, что-то вроде этого:

  1. Установите заставку как RootViewController, сделайте свою логику в фоновом режиме, и начать, чтобы проверить, если пользователь вошел в систему или нет.
  2. Затем, после завершения вызова async, перейдите к пользователю либо во входном экране, либо установите его как новый контроллер rootview в диспетчере навигации. Если пользователь не выполнил вход в систему, нажмите верхний контроллер на вершине loggedinscreen - не забудьте проверить, вошел ли пользователь в систему или нет, прежде чем вы начнете загружать определенные пользователем данные на экране входа.

Пример:

 MySplashController splash; 
     Navigationcontroller nav; 
     UIViewController masterviewcontroller; 

     Public override void FinishedLaunching(UIApplication app, NSDictionary options){ 

       splash = new MySplashController(); 
       window.rootviewcontroller = splash; 
       window.makekeyandvisible(); 

     } 
     void MyAsyncLoggedInCall(bool loggedin){ 
      if(loggedin) 
      LoggedIn(); 
      else 
      LogOn(); 
     } 
     void LoggedIn(){ 
     masterviewcontroller = MyLoggedInScreen(); 
     nav = new navigationcontroller(masterviewcontroller); 
     window.rootviewcontroller = nav; 
     } 
     void LogOn(){ 
     masterviewcontroller = MyLoggedInScreen(); 
     nav = new navigationcontroller(masterviewcontroller); 
     window.rootviewcontroller = nav; 
     nav.TopViewController.PresentModalViewController(new MyLogInScreen(),false); 
     } 

Это лишь один из способов сделать это. Вы также можете посмотреть, как реализовать функции входа в facebook, и сделать что-то подобное в своем приложении, так как оно очень похоже на вашу проблему. Monotouch bindings