• Xamarin.Forms<一>


      Xamarin这一新鲜玩意,让好多C#开发人员看到了开发IOS和Android的希望,我们就满怀希望的用上了这新鲜
    玩意,不过Xamarin就如美丽的月球一样,满满的都是坑~。废话不多了,先从View层的控件开始,也主要是我负责
    的View层,一点点摸索过来的,不过肯定会有瑕疵。

    各个控件View
    ActivityIndicator
    滚动的圆圈,表示后台有进行的运算。主要属性,IsRunning。
    BoxView
    一个有颜色的矩形,可以用于分割线。
    Button
    按钮,主要属性Image,Click。
    View Code
    DatePicker
    日期控件,字体颜色默认无法设置。binding的属性为DateTime。
    Editor
    长文本控件,可以回车换行,字体颜色默认无法设置
    Entry
    短文本控件,不可回车换行
    Image
    图片控件,包括程序图片、本地图片以及网络图片
    Label

    标签,文本显示
    ListView
    列表

     1 public class TestPage : ContentPage
     2     {
     3         public TestPage()
     4         {
     5             this.BindingContext = new TestModel();
     6         }
     7 
     8         public ListView TestListView()
     9         {
    10             var testList = new ListView
    11             {
    12                 HasUnevenRows = true,
    13                 //RowHeight = 40,
    14             };
    15             testList.ItemTemplate = new DataTemplate(typeof(TestViewCell));
    16             testList.SetBinding(ListView.ItemsSourceProperty, "TestList");
    17             testList.SetBinding(ListView.SelectedItemProperty, "SelectedTest");
    18             return testList;
    19         }
    20     }
    21 
    22     /// <summary>
    23     /// 测试列表选项类
    24     /// </summary>
    25     public class TestViewCell : ViewCell
    26     {
    27         public TestViewCell()
    28         {
    29             this.View = null;
    30         }
    31 
    32         public StackLayout TestViewCellSL()
    33         {
    34             var textName = new Label
    35             {
    36             };
    37             textName.SetBinding(Label.TextProperty, "TestName");
    38             var textImage = new Image
    39             {
    40             };
    41             textImage.SetBinding(Image.SourceProperty, "ImageSource");
    42             var testViewCellSL = new StackLayout
    43             {
    44                 Orientation = StackOrientation.Horizontal,
    45                 Children =
    46                 {
    47                     textImage,
    48                     textName,
    49                 },
    50             };
    51             return testViewCellSL;
    52         }
    53     }
    54 
    55     /// <summary>
    56     /// 测试类
    57     /// </summary>
    58     public class TestClass
    59     {
    60         public TestClass()
    61         {
    62         }
    63 
    64         public string TestName {  set; get; }
    65 
    66         public string ImageSource {  set; get; }
    67     }
    68 
    69     /// <summary>
    70     /// 测试Model
    71     /// </summary>
    72     public class TestModel
    73     {
    74         public TestModel()
    75         {
    76             TestList.Add(new TestClass { TestName = "1", ImageSource = "1.jpg" });
    77             TestList.Add(new TestClass { TestName = "2", ImageSource = "2.jpg" });
    78             TestList.Add(new TestClass { TestName = "3", ImageSource = "3.jpg" });
    79             TestList.Add(new TestClass { TestName = "4", ImageSource = "4.jpg" });
    80             TestList.Add(new TestClass { TestName = "5", ImageSource = "5.jpg" });
    81             TestList.Add(new TestClass { TestName = "6", ImageSource = "6.jpg" });
    82             TestList.Add(new TestClass { TestName = "7", ImageSource = "7.jpg" });
    83         }
    84         public List<TestClass> TestList = new List<TestClass>();
    85 
    86         public TestClass SelectedTest { get; set; }
    87     }
    View Code

    OpenGLView
    Picker
    相当于单选,从一个List里面选择一项,没有source属性binding,选项只能是纯文本,并且选择的是
    index,index从0开始,这个比较恶心,绑定SelectedIndex的时候有点费事。主要事件:SelectedIndexChanged。
    ProgressBar
    进度条,主要属性ProgressProperty,0至1。
    SearchBar
    搜索栏,字体颜色默认无法设置。主要事件:SearchButtonPressed。
    Slider
    线性控制栏,调节音量或亮度可用的控件。主要属性:Minimum最小值,Maximum最大值。主要事件:
    ValueChanged。
    Stepper
    加减号按钮控制器,通过按钮控制变化的控件。主要属性:Minimum最小值,Maximum最大值,Increment
    每次增加值。主要事件:ValueChanged。
    Switch
    切换器,类似于Check控件,Xamarin.Form没有Check控件。只要事件:Toggled。
    TableView
    一个可以包含多个Cell的控件,类似于ListView,不过这的每行的控件可以不一致。
    TimePicker
    时间控件,24小时。binding的属性为TimeSpan。
    WebView
    网页控件,主要属性Source = newUrlWebViewSource {Url = "http://baidu.com"}
    官方网址:http://developer.xamarin.com/guides/cross-platform/xamarin-forms/controls/views/

  • 相关阅读:
    MySQL存储过程和函数
    MySQL数据类型
    MySQL—基础(SQL语句)
    如何将一串字符串按照某个特定的字符分割后倒叙输出,如:www.baidu.com输出为com.baidu.www
    JAVA WEB数据中文编码问题
    如何用一条SQL语句从登录日志表中查询统计出每个人登录的次数
    JAVA WEB tomcat启动关闭问题
    thinkphp知识点
    smarty模板内容
    smarty基础
  • 原文地址:https://www.cnblogs.com/shadow-fei/p/4173572.html
Copyright © 2020-2023  润新知