2017-08-26 4 views
0

J'essaie de créer une application mobile Xamarin Forms en utilisant Prism (Unity) Framework - et d'ajouter une extension de clavier iOS à l'application mobile.Xamarin iOS Prism (Unity) - Extension clavier

  1. J'ai ajouté le projet d'extension de clavier et ajouté la référence à l'application iOS.
  2. J'ai ajouté un projet ViewController dans le clavier d'extension (qui a créé un fichier XIB ainsi) comme ci-dessous:

    public partial class ViewController1 : UIViewController 
    { 
        public ViewController1() : base("ViewController1", null) 
        { 
        } 
    
        public override void DidReceiveMemoryWarning() 
        { 
         base.DidReceiveMemoryWarning(); 
    
         // Release any cached data, images, etc that aren't in use. 
        } 
    
        public override void ViewDidLoad() 
        { 
         base.ViewDidLoad(); 
    
         // Perform any additional setup after loading the view, typically from a nib. 
    
    
        } 
    

    }

Quand je reconstruis et courir, et installer le clavier et cliquez sur l'icône du clavier pour basculer, la vue du clavier n'est pas retournée.

Voici le code pour les App.xaml.cs dans l'application principale

public partial class App : PrismApplication 
    { 
     public App(IPlatformInitializer initializer = null) : base(initializer) 
     { 


     } 

     protected override void OnInitialized() 
     { 
      InitializeComponent(); 


      NavigationService.NavigateAsync("NavigationPage/MainPage?title=Hello%20from%20Xamarin.Forms"); 
     } 

     protected override void RegisterTypes() 
     { 
      Container.RegisterTypeForNavigation<NavigationPage>(); 
      Container.RegisterTypeForNavigation<MainPage>(); 
     } 
    } 

Je ne sais pas ce qui manque ...?

Je ne trouve pas de réponses sur la façon de lier la vue du clavier par code parce que je construis cela en utilisant un PC Windows .. toute aide serait appréciée.

Répondre

0

Vous devez créer une instance de votre point de vue du clavier et assigner cet objet à votre contrôleur vue Voir la propriété:

public override void ViewDidLoad() 
    { 
     base.ViewDidLoad(); 

     //bind view to controller 
     var viewNib = UINib.FromName("KeyboardView", null); 
     View = viewNib.Instantiate(this, null)[0] as UIView;  
    } 

Remplacer « KeyboardView » avec le nom de votre fichier .xib