2017-01-25 4 views
0

Я пытаюсь открыть новый ViewController нажатием кнопки. Я создал новый класс secondViewController и задал имя SecondViewController. Я также добавил контроллер навигации и подключил его к контроллеру RootView. Однако, если я пытаюсь запустить его, я получаю следующие ошибки: enter image description hereНевозможно изменить viewController с кнопкой в ​​Xamarin

btn_Next.TouchUpInside += (object sender, EventArgs e) =>{ 

       secondViewController controller = this.Storyboard.InstantiateViewController("SecondViewController") as secondViewController; 
       this.NavigationController.PushViewController(controller, true); 
      }; 

ли я что-то пропустил, и это имя то же самое, как Id раскадровки?

ответ

2

Похоже, вы никогда не создавали отдельный класс для своего secondViewController. Убедитесь, что вы явно создать новый класс UIViewControlle г:

public partial class SecondViewController : UIViewController 
{ 
} 

Затем в раскадровке, установите «класс» ваш secondViewController к этому классу.

Это позволит вам сделать InstantiateViewController вашим SecondViewController.

В качестве альтернативы, вы можете просто изменить свой код на этот:

 btn_Next.TouchUpInside += (object sender, EventArgs e) =>{ 

      var controller = this.Storyboard.InstantiateViewController("SecondViewController"); 
      this.NavigationController.PushViewController(controller, true); 
     }; 

Если вы не заботитесь за то, что отдельный класс для нового контроллера.

+0

Итак, я создал новый класс UIViewController, добавил класс в secondViewController и создал экземпляр класса как SecondViewController. Тем не менее, я все еще получаю сообщение об ошибке, которое не может найти SecondViewController. Я указал с именем, но я не могу найти способ установить идентификатор раскадровки. –

+0

Когда вы выбираете UIVeiwController, когда находитесь в своей доске объявлений (нажав нижнее поле), откройте вкладку свойств, и появится поле «Раскадровка». Прямо под «классом» и «модулем» – SuavePirate

+0

О, спасибо, нашел. Я всегда создавал класс UIView, указанный в представлении, поэтому я не мог видеть свойство «Storyboard id». –

Смежные вопросы