很对开发者不理解Andoid设计,可以说公司上层根本不懂Android 的设计,大多数开发用的都是IOS平台的东西,甚至于国内大公司产品也如此,微信在5.2版本后终于有点有Android的影子了, 许多开发者会在多个平台上发布应用。如果你打算为 Android 开发应用,请记住在不同的平台需要遵守不同的要求和惯例。在某个平台上看起来不错的设计,也许在另一个平台上就不合适。“一次设计,到处运行”的想法可能在一开始能节省一些时间,但是和平台不一致的体验最终可能会疏远用户。考虑按照下面的指导进行设计,避免常见的错误和缺陷。

不要模仿其他平台的 UI 元素

不同的平台都会提供别具一格的、精心设计的、主题化的 UI 元素。例如在一些平台上鼓励使用圆角按钮,另一些则鼓励使用渐变标题栏。许多情况下,虽然元素的功能是一样的,但是设计方法截然不同。

当你为 Android 设计应用时,不要使用其他平台的 UI 元素,也不要模仿其他平台元素的行为。参考控件这一章了解 Android 主要的 UI 元素。同时,观察 Android 系统应用,了解这些元素是如何使用的。如果你要自定义 UI 元素,请按照你品牌的统一设计,不要照搬其他平台的设计。

Android、iOS 和 Windows Phone 的 UI 元素样例。

不要使用专为其他平台设计的图标

不同的平台都会提供常用功能的图标集,例如分享、新建和删除。

如果你正在将应用移植到 Android 平台,请不要使用专为其他平台设计的图标。

你可以在 Android SDK 中找到各种用途的图标。

Android、iOS 和 Windows Phone 的图标样例。

不要使用底部的标签栏

其他平台使用底部标签栏在应用中切换视图。Android 标签应当放在顶部的操作栏中。不过你可以在底部放置副操作栏。

你应当按照该指导设计应用,提供统一的平台应用体验,区分操作栏和视图切换。

请参考操作栏一节,了解如何合理的使用操作栏切换视图。

Android 拨号应用的操作栏标签 vs. iOS 的底部标签栏。

不要通过硬编码连接其他应用

有时你的应用需要使用其他应用提供的功能。例如通过社交网络或者短消息分享应用中的内容,或者在浏览器内打开链接。不要硬编码这些操作,否则就只能连接到一个特定的应用。你应该调用 Android 提供的 intent API 打开一个活动选择器 (activity chooser) ,它将会列出所有支持指定操作的应用。这样用户可以选择他们喜欢的应用完成操作。对于“分享”这一特殊操作,你应当考虑在操作栏中使用分享提供器 (Share Action Provider) 来完成操作,它可以使得用户更快的选择最近使用的分享应用。

通过活动选择器 (activity chooser) 或者分享提供器 (Share Action Provider) 连接其他应用。

不要在操作栏中使用带有标题的返回按钮

其他平台使用带有标题的返回按钮,使用户可以返回应用的上一层。Android 则使用操作栏的应用图标返回上一层,同时使用导航栏的返回按钮返回前一个屏幕。更多信息,请参考导航一节。

按照该指导设计应用,提供统一的导航体验。

Android 操作栏中的向上图标 vs. iOS 的返回按钮。

不要在列表中使用向右箭头

其他平台上,通常在列表中使用向右箭头提示用户触摸后有更多的内容。

Android 不这么做。请不要使用向右的箭头,不要让用户猜测它的用处。

Android 设置列表中没有向右箭头 vs. iOS 设置。

更多相关文章

  1. Android应用程序注册广播接收器(registerReceiver)的过程分析
  2. android中shape绘制背景图片
  3. 站在大神的肩膀上 - 简述Android应用启动流程
  4. Zipalign:一个简单的优化
  5. Android应用开发资源
  6. Android(安卓)4.0硬件加速及绘制技巧
  7. 箭头函数的基础使用
  8. NPM 和webpack 的基础使用
  9. Python list sort方法的具体使用

随机推荐

  1. view的clickable属性和点击background颜
  2. android testing (一)
  3. Ionic2 在Android设备上的部署
  4. Android倒计时CountDownTimer小记
  5. Android消息处理机制——AsyncTask 源码
  6. [Android]去除程序中广告的好方法:告诉广
  7. 详解android:scaleType属性
  8. Android基于Cling开发DLNA应用
  9. ListView的优化就这么多了
  10. Android(安卓)CountDownTimer带有动画的