C#程序员

Xamarin.Forms Views介绍(二)

2016-09-26  本文已影响817人  MayueCif

Button使用

功能很简单,用来响应用户的点击操作。

Button特殊属性介绍

Text、FontAttributes等属性不再说明。

只设置BorderWidth属性,仅IOS有边框效果。同时设置BorderWidth和BorderColor,使 Windows 10 mobile显示边框效果。而Android要同时设置BorderWidth、BorderColor和BackgroundColor才会有边框效果。
BorderRadius仅对Android和IOS有效

Button事件

示例:

<Button Text="Forms Button"
     HorizontalOptions="Center"
     VerticalOptions="Center"
     BorderWidth="5"
     BorderColor="Aqua"
     BackgroundColor="Red"/>

效果,Android预览效果变形,运行时正常(为了演示属性,效果是难看了):


ActivityIndicator使用

给用户简单的反馈表明程序正在运行,不提供具体进度信息。
不同平台效果

ActivityIndicator内部实现只定义了两个属性。

无特殊事件。

XAML定义:

<ActivityIndicator
    HorizontalOptions="Center"
    VerticalOptions="Center"
    Color="Red" 
    IsRunning="true"/>

ProgressBar使用

显示进度信息。定义了Progress属性表示当前进度。Progress也是ProgressBar定义的唯一属性,没有提供MaxXX和MinXX相关属性,所以Progress有效值是0~1范围内的double类型数值。
不同平台效果展示:

XAML定义

<ProgressBar 
    VerticalOptions="Center"
    Progress=".5" />

ProgressBar定义了一个ProgressTo方法设置当前进度值,与直接赋值Progress不同ProgressTo提供了动画效果(Animate方法实现)。第一个参数value表示设置的进度值,第二个参数length表示多少时间内达到设置的值(毫秒),第三个参数easing表示动画效果。

ProgressTo定义

使用示例和效果:

await progressBar.ProgressTo(0.8, 3000, Easing.BounceOut);
BounceOut效果

Slider使用

Slider是一个水平拖动的滑块。

Slider提供属性

定义Slider注意事项。Minimum值必须小于Maximum值,Value值必须大于等于Minimum小于等于Maximum。

<Slider Minimum="10"/>定义Slider引发异常:

XAML解析器解析Slider节点,初始化Slider定义Minimum为10,Maximum值仍是默认值1,Minimum大于Maximum引发异常,因此定义Slider时应先为Maximum赋值再为Minimum赋值,Minimum和Maximum有正确的赋值之后再为Value赋值。

注意Value赋值位置

当我们先定义Value值为30时,滑块仍处于最小值位置不会出现我们期望的效果,这是因为XAML解析器解析Slider节点会根据属性赋值顺序从前到后初始化Slider对象,先赋值Value等于30,此时Minimum值为0,Maximum值为1,Value等于30不是一个合法的值.

Slider提供事件


Stepper使用

Stepper 与Slider类似,区别是Stepper两个按钮组成,两个按钮加减一个增量值改变Value的值。

Stepper不同平台效果

Stepper提供属性

Stepper提供事件


Switch使用

Switch表示开关按钮,获取用户bool类型输入。Switch只定义了一个IsToggled属性,IsToggled属性的改变会触发Toggled事件。

当我们为Switch的x:Name属性时赋值时可能会赋值为switch与C#关键字重复,可以替换为@switch

Switch不同平台效果
上一篇 下一篇

猜你喜欢

热点阅读