Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2210343
  • 博文数量: 849
  • 博客积分: 17977
  • 博客等级: 上将
  • 技术积分: 8135
  • 用 户 组: 普通用户
  • 注册时间: 2005-08-26 09:59
  • 认证徽章:
个人简介

一个好老好老的老程序员了。

文章分类

全部博文(849)

文章存档

2018年(88)

2017年(130)

2015年(5)

2014年(12)

2013年(41)

2012年(36)

2011年(273)

2010年(1)

2009年(54)

2008年(66)

2007年(49)

2006年(82)

2005年(12)

分类: Android平台

2017-10-18 21:30:46

iOS,Android和Windows都会为开发人员公开API,为每个人构建可访问的移动应用。 我们很高兴地宣布,我们在Xamarin.Forms中添加了可用性的新API,以便开发人员更轻松地构建可访问的跨平台移动应用程序。 在这篇文章中,我们将介绍添加到Xamarin.Forms中的新API,从而轻松构建可访问的移动应用程序。

XAMarin.Forms中的AutomationProperties APIs

Xamarin.Forms 2.3.5 provides a base set of hint-related accessibility APIs. They consist of the following:提供了一组提示相关的可访问性API。 它们包括以下内容:

  • AutomationProperties.Hint
  • AutomationProperties.IsInAccessibleTree
  • AutomationProperties.LabeledBy
  • AutomationProperties.Name

通过定义这些属性,我们可以利用iOS和Android中的底层辅助功能,例如VoiceOver

使Xamarin Evolve 2016应用程序可访问

挖掘这些新API如何工作的最简单的方法是与现实世界的例子。 让我们从Xamarin Evolve 2016移动应用程序中登录LoginPage,并使用Xamarin.Forms中的新API进行访问。 在这个布局中,我们有通常的Xamarin.Forms元素,如Entry和Button。 在Xamarin.Forms 2.3.5之前,我们必须使用平台效果或自定义渲染器来利用可访问性API。 使用新的API,我们只需添加一些属性,我们的移动应用就可以访问:

点击(此处)折叠或打开

  1. <toolkit:EntryLine
  2.         Text="{Binding Email}"
  3.         Keyboard="Email"
  4.         HorizontalOptions="FillAndExpand"
  5.         Placeholder="email address"
  6.         x:Name="EntryEmail"
  7.         StyleId="EmailTextField"
  8.         IsEnabled="{Binding IsNotBusy}"
  9.         BorderColor="#ECECEC"
  10.         AutomationProperties.Hint="Enter your email here"
  11.         AutomationProperties.IsInAccessibleTree="true"
  12.         AutomationProperties.Name="Email entry field">
  13.  
  14.         <toolkit:EntryLine.HorizontalTextAlignment>
  15.             <OnPlatform x:TypeArguments="TextAlignment" iOS="Center"/>
  16.         </toolkit:EntryLine.HorizontalTextAlignment>
  17. </toolkit:EntryLine>


在启用辅助功能的物理设备上运行代码,并为用户提供为AutomationProperties.Hint提供的值。 这在iOS上使用VoiceOver 在Android上,一些控件,包括Button,不幸的是,由于与Android本身有关的原因,它们的行为不正确,尽管Slider等元素将读取“提示”和“名称”值的组合。

要在iOS中启用VoiceOver,请导航到设置 - >常规 - >辅助功能 - > VoiceOver。 对于Android,请安装“话语提示”,这很可能已经在设备上安装,并且可以在“设置” - >“辅助功能” - >“视觉”下启用。 Windows用户可以在“设置”中的“轻松访问”选项下启用旁白。

记住,您将需要将Xamarin.Forms 2.3.5添加到使用Xamarin.Forms的所有项目中,包括您的iOS和Android项目。 请注意,IntelliSense中的AutomationProperties属性可能不可用,因为它们是附加的属性。

结论

正如您在上面的示例中看到的,在XAML中仅添加了四个属性给我的控件,为我的移动应用程序添加了提示驱动的可访问性。 我们鼓励您在Xamarin.Forms 2.3.5中提供这些新API,并让我们知道您的想法! 您可以在每个平台的网站上阅读有关各种辅助功能的更多信息 (iOS, Android, Windows)。

阅读(406) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
评论热议
请登录后评论。

登录 注册