wake-up-neo.net

Kann ich einen Xaml-Designer oder Intellisense mit Xamarin.Forms verwenden?

Mit Xamarin 3.0 wurde Xamarin.Forms eingeführt, eine leistungsstarke Abstraktion der Benutzeroberfläche, mit der Entwickler problemlos Benutzeroberflächen erstellen können, die von Android, iOS und Windows Phone gemeinsam genutzt werden können. 

Es scheint sehr mächtig zu sein, aber ich habe einige Schwierigkeiten, als Xamarin eine Benutzeroberfläche zu erstellen. Forms enthält mehr als 40 Steuerelemente. Ohne Intellisense oder einen minimalistischen Designer ist es ziemlich kontraproduktiv, nach allen Eigenschaften im offiziellen Dokument oder durch Durchsuchen des C # -Codes zu suchen.

Die standardmäßige Xaml-Teamplate sieht folgendermaßen aus, und es ist offensichtlich nicht trivial, neue Steuerelemente ohne Hilfe hinzuzufügen.

<?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="App1.Class1">
    <Label Text="{Binding MainText}"  VerticalOptions="Center" HorizontalOptions="Center" />
</ContentPage>

Gibt es also eine Chance, Intellisense in Xaml zu haben oder den Xaml-Designer zu verwenden?

41
Cybermaxs

Xamarin.Forms enthält keinen grafischen Designer (noch?). In Bezug auf Intellisense gibt es 2 Teile:

  • verweis auf xaml -Element, das mit x: Name im Code hinter works in Xamarin.Studio und VisualStudio gekennzeichnet ist
  • Die Xaml-Vervollständigung von Elementen und Attributen funktioniert in Xamarin.Studio, und die Unterstützung für die Vervollständigung von Attributwerten ist in Kürze verfügbar. Leider funktioniert Intellisense für Xaml in VisualStudio derzeit nicht. Das Problem ist jedoch bekannt und es werden Lösungen gesucht.
18

Ich hatte Erfolg mit Xamarin.Forms Intellisense-Erweiterung in einer PCL, aber nicht in SAP.

enter image description here

6
Clint Landry

Intellisense wurde in seiner ersten Form veröffentlicht, weitere Informationen hier:

Mobile Essentials: Produktivitätswerkzeuge für mobile Entwickler

5
Ajay Sharma

Xamarin Studio 6.1+ enthält eine XAML-Vorschau:

 enter image description here

Es ist nicht perfekt, aber als "Preview" -Version macht es einen anständigen Job, Ihre XAML in verschiedenen Auflösungen für iOS und Android zu rendern, einschließlich unterschiedlicher Orientierungen.

Für die Registrierung ist ein Video erforderlich: https://brax.tv/lesson/xamarin-forms-hello-xaml-previewer/

Xamarin Evolve Videos @ https://evolve.xamarin.com

(Offizielles Evolve-Video zum Zeitpunkt dieses Beitrags ist noch nicht online)

4
SushiHangover

Ein Drittanbieter-Unternehmen entwickelt einen Xamarin.Forms-Designer namens UI Sleuth.

Sie sind immer noch im Stealth-Modus, haben jedoch ein paar Demo-Videos gepostet:

Ich empfehle dem Lead Architect auf Twitter folgen . Hier veröffentlichen sie die neuesten UI Sleuth-Updates!

1
Brandon Minnick

Wenn Sie Resharper 9 verwenden, funktioniert Intellisense in Visual Studio mit der von Clint Landry erwähnten Xamarin.Forms Intellisense-Erweiterung.

1
Caitlin

Für die Implementierung von Intellisense auf VS ist lediglich das Xamarin.Forms-XAML-Schema in einer .xsd-Datei zum Installationszeitpunkt im richtigen Ordner von Visual Studio abgelegt. Ich denke, das NuGet-Paket/die Tasks haben nicht zur Installationszeit und den Zugriff, den das Betriebssystem benötigt (es sei denn, Sie führen Visual Studio als Administrator und fest codierte Pfade in den NuGet-Paketinstallationsaufgaben aus, was keine gute Idee ist).

Ich habe die gleiche Frage an das Xamarin-Team gestellt und sie haben geantwortet, dass die Intellisense-Software nach den folgenden Updates und dem Designer in der Zukunft noch nicht kommen wird (ich weiß nicht, wie bald, auch für die Alpha/Beta-Kanäle des Updates).

Ich hoffe es hilft...

0

Ich habe gerade einen Tweet über einen Xamarin.Forms-Designer gelesen, der auf der Xamarin Evolve 2016-Konferenz angekündigt wurde

In der Zwischenzeit können Sie den Windows Phone-Designer und einen Konverter verwenden, um Xamarin.Forms-Markup auszuspucken. Siehe: http://www.gui-innovations.com/Blog%20Posts/windows-phones-forms -to-xamarin-forms.html

Dieses Tool wird auch zusammen mit anderen verwandten Tools erwähnt unter: https://github.com/MvvmCross/MvvmCross-Forms/wiki/XAML-Toolss-for-Xamarin

0
George Birbilis

 enter image description here

Ich habe zwei Videos erstellt, in denen beschrieben wird, wie Sie den neuen XAML Previewer von Xamarin Studio verwenden können:

Intro:

Verwenden von Konstruktionsdaten:

Daten mit ViewModelLocator entwerfen:

Ein Beispiel für den Code:

<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
        xmlns:x="http://schemas.Microsoft.com/winfx/2009/xaml" 
        x:Class="STLBrews.Mobile.BreweriesPage"     
        xmlns:vm="clr-namespace:STLBrews.ViewModels;Assembly=STLBrews.ViewModels" 
        BindingContext="{x:Static vm:ViewModelLocator.BreweriesVM}">
    <ContentPage.Content>
        <ListView
            ItemsSource="{Binding Items}" >
            <ListView.ItemTemplate> 
                <DataTemplate>
                    <ViewCell>
                        <StackLayout Orientation="Horizontal">
                            <Image Source="{Binding LogoUrl}"/>
                            <StackLayout Orientation="Vertical" Spacing="0" VerticalOptions="Center">
                                <Label Text="{Binding Name}" FontAttributes="Bold"/>
                                <Label Text="{Binding Description}" FontSize="10"/>
                            </StackLayout>
                        </StackLayout>
                    </ViewCell>
                </DataTemplate>
            </ListView.ItemTemplate>
        </ListView>
    </ContentPage.Content>
</ContentPage>
0
Ben Bishop