Xamarin.Forms初始

前言async

  Xamarin.Forms 爲 .NET 開發人員提供一個完整的跨平臺 UI 工具包。 在 Visual Studio 中使用 C# 生成徹底本機的 Android、iOS 和通用 Windows 平臺應用,可是在國內用的不多教程也不多,用會了也很方便。ide

模擬器選擇工具

  強烈建議不要使用VS自帶的模擬器,就是很卡的那種,這裏博主推薦使用夜神模擬器。佈局

  鏈接夜神模擬器步驟以下:學習

  1).首先查到夜神模擬器的端口,開的第一模擬器端口默認是62001這裏指的是本地。spa

  2).而後打開VS中的ADB控制檯:輸入adb.exe connect 127.0.0.1:62001[提示connected說明鏈接成功]3d

  3)sdk的選擇目前谷歌最新的是9.0看我的是否須要選擇安裝。code

Xamarin.Forms佈局orm

  XF一共提供了5種佈局分別是StackLayout,RelativeLayout,AbsoluteLayout,Grid,ScrollViewxml

  1).SL佈局適用通常的佈局。

  2).RL佈局適用疊加。

  3).AL佈局適用遮罩。

  4).Gd佈局就是柵欄,典型例子計算器。

  5).SV佈局就是屏幕能夠下拉的。

StackLayout佈局

  範例1:

  

  

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:MusicCloud"
             x:Class="MusicCloud.MainPage">
    <ContentPage.Padding>
        <OnPlatform x:TypeArguments="Thickness" 
                    iOS="0,20,0,0"
                    Android="0,20,0,0"/>
    </ContentPage.Padding>
    <StackLayout VerticalOptions="Center"  BindingContext="{Binding Source={x:Reference sli}}">
        <Label
               VerticalOptions="CenterAndExpand" 
               HorizontalOptions="CenterAndExpand"
               Text="{Binding Path=Value,StringFormat='值:{0:F2}'}" />
        <Label 
               VerticalOptions="CenterAndExpand" 
              Opacity="{Binding Path=Value}"
               HorizontalOptions="CenterAndExpand"
               Text="改變透明度" />
        <Slider x:Name="sli" Maximum="1"></Slider>
    </StackLayout>
</ContentPage>

 

Opacity="{Binding Path=Value}" 其中path能夠省略,前提是Bind只有一個參數。
範例2:

當點擊登陸後進入下個頁面

 1 <?xml version="1.0" encoding="utf-8" ?>
 2 <ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
 3              xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
 4              BackgroundColor="Blue"
 5              x:Class="MusicCloud.StackLayoutTrain.StackLayoutTest">
 6     <ContentPage.Content>
 7         <!--VerticalOptions 垂直屬性-->
 8         <!--HorizontalOptions 水平屬性-->
 9         <StackLayout VerticalOptions="Center"  Spacing="20">
10             <Label  
11                 Text="歡迎demo" 
12                 FontSize="26" 
13                 TextColor="#FFF" 
14                 HorizontalOptions="Center"/>
15             <Label 
16                 Text="Edna" 
17                 HorizontalOptions="Center"
18                 TextColor="#FFF"
19                 FontSize="16"/>
20             <StackLayout Orientation="Horizontal" HorizontalOptions="Center" Spacing="50">
21                 <Button 
22                 BackgroundColor="#FFF"
23                 HorizontalOptions="Center"
24                 Text="登陸"
25                 Clicked="Ok_Clicked"/>
26                 <Button 
27                 BackgroundColor="#FFF"
28                 HorizontalOptions="Center"
29                 Text="註冊"/>
30             </StackLayout>
31         </StackLayout>
32     </ContentPage.Content>
33 </ContentPage>

 

登陸事件

 private async void Ok_Clicked(object sender, EventArgs e)
        {
            await Navigation.PushModalAsync(new StackLayoutTest_Two());
        }

 

 1 <?xml version="1.0" encoding="utf-8" ?>
 2 <ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
 3              xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
 4              x:Class="MusicCloud.StackLayoutTrain.StackLayoutTest_Two">
 5     <ContentPage.Padding>
 6         <OnPlatform 
 7             Android="0,20,0,0"
 8             x:TypeArguments="Thickness"/>
 9     </ContentPage.Padding>
10     <ContentPage.Content>
11         <StackLayout Spacing="10">
12             <Label Text="周家莊地震安置點"/>
13             <Image 
14                 Source="http://n.sinaimg.cn/default/1_img/upload/3933d981/713/w930h583/20181217/xvSU-hqhtqsp1549885.jpg"
15                  Aspect="AspectFill"/>
16             <StackLayout Orientation="Horizontal" HorizontalOptions="Start" Spacing="10">
17                 <Button Text="點贊" HorizontalOptions="Start"/>
18                 <Button Text="留言" HorizontalOptions="Start"/>
19                 <Button Text="分享" HorizontalOptions="Start"/>
20             </StackLayout>
21             <StackLayout >
22                 <BoxView BackgroundColor="Gray" HeightRequest="1"/>
23                 <StackLayout Padding="10" Orientation="Vertical">
24                     <Label Text="800贊" FontAttributes="Bold"/>
25                     <Label Text="浙江人很了不得。當時社會上流傳着「四千精神」:走遍千山萬水,說盡千言萬語,想盡想方設法,歷經千辛萬苦。
26                            而浙江的鄉鎮企業就是這樣從各類渠道尋求發展。當時浙江煤炭、鋼材很短缺,山西糧食很短缺,浙江人就把浙江的大米用火車拉去換山西的煤炭,把舟山的黃魚和帶魚拉去北方換鋼材。步鑫生講得很形象,他說,國有企業是頭「豬」,餵它多少吃多少;大集體企業是隻「雞」,撒一點米,沒吃飽它本身還會去找吃的;鄉鎮企業是隻「麻雀」,徹底是靠本身去找吃的。"/>
27                 </StackLayout>
28             </StackLayout>
29         </StackLayout>
30     </ContentPage.Content>
31 </ContentPage>

 

初次寫Xamarin.forms不對的地方歡迎指正,共同交流學習。

相關文章
相關標籤/搜索