2014-10-30 19 views
14

Sono praticamente nuovo per i moduli Xamarin. Sto tentando di aggiungere elementi della barra degli strumenti alla pagina del contenuto.La barra degli strumenti non viene visualizzata nei moduli xamarin

Sto usando IPAD Air come dispositivo di distribuzione e ho utilizzato anche diversi simulatori iPhone/iPad. Ho fatto riferimento al documento pdf di XamarinForms-Mobile App. Anche se è di base, non sono sicuro, perché non sono in grado di vederlo nel dispositivo. Per favore aiutami dove sto facendo l'errore.

public partial class SamplePage : ContentPage 
{ 
    public SamplePage() 
    { 
     //Toolbar items 
      ToolbarItem scanItem = new ToolbarItem(); 
      scanItem.Name = "Scan"; 
      scanItem.Order = ToolbarItemOrder.Primary; 

      ToolbarItem settingsItem = new ToolbarItem(); 
      settingsItem.Name = "Settings"; 
      settingsItem.Order = ToolbarItemOrder.Primary; 

      ToolbarItems.Add (scanItem); 
      ToolbarItems.Add (settingsItem); 
    } 
} 

App.cs

public class App 
    { 
     public static Page GetMainPage() 
     { 
      return new SamplePage(); 
     } 
    } 

provato modo XAML di farlo pure. Ma nessun risultato. La pagina di contenuto è vuota.

<?xml version="1.0" encoding="UTF-8"?> 
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="BLE_Core.BLECorePage"> 
    <ContentPage.Content> 
    </ContentPage.Content> 
    <ContentPage.ToolbarItems> 
     <ToolbarItem Name = "Scan"></ToolbarItem> 
     <ToolbarItem Name = "Settings"></ToolbarItem> 
    </ContentPage.ToolbarItems> 
</ContentPage> 

risposta

26

I tuoi ToolbarItem non vengono visualizzati se la tua app non ha una barra degli strumenti. Il modo più semplice per aggiungere uno è quello di avvolgere la pagina in un NavigationPage

public static Page GetMainPage() 
{ 
    return new NavigationPage(new SamplePage()); 
} 
+4

grazie Jason. Non ho potuto ottenere che esatto di lavoro funzione, ma questo ha fatto il trucco per ottenere la barra degli strumenti per mostrare per me: App pubblica() { \t \t MainPage = new NavigationPage (nuova MyAppName.MyPage()); } – user761574

+0

cosa fare, se la mia pagina ha un costruttore non vuoto? – Bobbelinio

+1

basta passare gli argomenti necessari per il costruttore – Jason

1

Volevo solo aggiungere un caso limite a questo che mi ha spinto noci per un paio d'ore. Ho aggiunto icone all'esterno di Visual Studio e ho tentato di fare riferimento a esse come icone della barra degli strumenti nella mia app per moduli Xamarin. Durante il test dell'app Android, l'icona della barra degli strumenti a cui facevo riferimento non veniva visualizzata. Alla fine ho capito che le icone non venivano affatto impacchettate nel file .APK. Perché? Mi ero dimenticato di includerli nel progetto Visual Studio. Esplora soluzioni -> Fai clic su progetto -> Fai clic sull'icona Mostra tutti i file nella barra di intestazione di Solution Explorer. Appaiono quindi i file delle icone, quindi basta fare clic con il pulsante destro del mouse e selezionare Includi nel progetto per ognuno di essi. Doh ... gnash ... gnash ecc.