控件说明

  1)输入框

  若输入框有默认提示,点击输入框,弹出软键盘。

  当输入框内不为空(空格除外)时,默认显示消失。

  2)软键盘的弹出及退去机制

  当输入框内必须输入的为数字时,弹出数字软键盘。其余时候,弹出文字软键盘。

  当在软键盘以外区域,点击或者向下滑动时,软键盘退去。

  3)小黑块提示

  显示*秒,然后自动消失。

  4)选择弹框

  弹框上有操作按钮。

  点击弹框以外的区域,弹框消失。

  5)手机返回键(安卓)

  点击手机上返回键,返回上一层,并弹出相应提示。

  6)Home键

  按home键,程序改为后台运行,再次打开软件时,则回到按home键时的页面。

  在文档的一开始,最好有一个单独的模块说明应用内使用的控件,说明这些控件的类型以及每个控件对应的操作方式,在这个模块统一说明之后,在其他模块涉及此控件时,只要简单阐述一下就ok了。下面列举了一些常用的控件。

  同样,很多通用的机制也能整合在一起,比如加载机制、缓存机制、网络判断、中断机制等, 以下是我自己整理的几个通用的功能。

通用功能:

  1)缓存机制

  每一步操作、每一个页面切换之后,都要想得到的数据需要缓存么?缓存到哪里?清理缓存的时机是什么?

  2)网络判断

  a、一般当涉及到下载或其他很耗费流量的操作时,会进行2/3G网络还是wifi网络的判断,当判断出是非wifi状态时,会进行提醒。

  b、其他需要向后台请求数据时,只进行简单的网络状况是否良好的判断,当网络状况不良时进行提示。

  3)中断机制

  除退出登录外,要考虑出现什么情况会导致用户中断操作。中断操作会有什么影响,比如是否要保存操作进度等等。

  常见的几种情况如下:

  a、来电

  b、Home键,退到后台运行。

  c、按返回键(安卓)

  d、页面上有暂停使用的功能,比如倒计时、音频播放过程中的暂停按钮。

  虽然APP千差万别,但不管设计原型还是写PRD时,只要涉及到页面和控件,有些东西还是相通的,下文整理了一些要考虑到的方面。

  页面的相关注意点

  1)此页面的使用场景是什么,用户进入此页面目的是什么?我们设计此页面的目的的是什么?我们希望用户长时间停留此页面么?

  2)前置条件:有几种方式进入此页面;不同的身份进入此页面时,操作权限有差别么?

  3)退出此页面的机制。常见的有:左上角的返回按钮,返回上一层;按手机返回键(安卓)也返回上一层。

  4)操作手势:比如在左右侧抽屉,左右划通常可以返回主界面;比如顶部有切换Tab,是采用左右划切换还是点击切换;还比如有些应用双击可放大页面,两个手指按住并同时向中间滑动,表示缩小页面,比如长按可能会弹出复制及粘贴的选择框。

  5)身份不同、页面的显示内容不同

  比如被踢出群组后,在被踢出人的聊天页面和其他人的聊天页面,显示内容是不同的;再比如,管理员和普通成员的操作权限不同,所以进入同一页面时,显示的内容也不同。

  6)默认框架(常常忘记!)

  当页面有好几种状态时(比如2张图片和3张图片时,页面的状态就是不同的),要定义默认状态,及定义页面的默认框架。

  进入页面时先显示默认框架,向后台请求数据后,根据后台数据,页面再调整为对应的框架。

  7)数据为空时的默认图片(常常忘记!)

  上一条定义了页面的默认框架,但仅有框架是不够的,还必须定义框架中的默认显示图片,此图片会打包进入安装包,网络状况不好,向后台请求不到数据时,就会显示默认框架和默认图片。

  8)、显示机制、排序机制、刷新机制

  a、确定app要适配的屏幕大小,iOS支持到什么版本,安卓要适配的分辨率是多少。

  然后要形成自己的直觉,适配的最小分辨率的屏幕最多能放多少按钮,现在的设计方案放在要适配的最小屏幕上,会不会太挤。

  当某一行字数太多时,一定要想这么多字放不放的下,放在一起好不好看。

  是考虑翻页还是瀑布流?

  b、排序机制。

  一个页面显示多少?按照哪些因素进行什么排序?

  c、刷新机制。

  一次刷新多少?如何刷新更多?自动刷新还是手动刷新?当刷不出新内容时给提示了么?

  常见的手动刷新方式:右上角有刷新按钮,点击,手动刷新。

  常见的自动刷新:再次进入此页面时刷新;设定一个时间值,每隔一段时间刷新一次。

  控件的相关注意点

  控件是指例如按钮、选择框、切换tab、滑动条等等之类的可操作的部件。

  1)控件的各种状态出现的前提条件是什么?不同身份进入页面时,按钮的状态一样么?

  2)控件的状态定义?

  比如,比如提交按钮,要定义清楚什么时候可点,什么时候不可点

  3)控件的位置、大小是否合适?

  待操作按钮在当前界面中是否明确?重要、频繁触发的功能按钮是否在手机的可操作区域?

  4)控件的操作方式有几种?每种操作的结果是什么?用户能找到隐藏的比较深的操作方式么?需不需要加用户引导?

  常见的有:点击、长按、左右划

  5)操作过程中的状态改变

  a、加载:状态改变的等待时间是否超过2S左右,如果太长是否需要加入加载状态

  b、读取

  c、缓冲

  d、操作进度显示:如进度条、

  6)操作过程中的继续操作

  考虑按钮操作过程中的继续操作会造成什么影响?操作进度需要保存么?需要进行提示么?

  常见的继续操作:取消、切换、返回、点击其他区域、再次连续的点击此按钮

  7)操作过程中的中断

  参考 通用功能 3)中断机制

  8)操作之后

  a、是否出现了合适的提示?

  出现的提示的类型:选择轻(tip/小红点)、中(Toast)、重(提示框)优先级别是否恰当

  b、操作后按钮状态的变化

  c、操作后出现的各种结果:成功、失败、空值

  9)思考对操作之后出现的结果,再次进行操作,会出现什么情况?

  10)思考特殊情况对此按钮的操作带来的影响

  a、此按钮的操作对网络的要求是什么?wifi还是2/3G网络?网络的判断逻辑是什么?网络不好时,进行合适的提醒了么?

  b、此按钮要求登录么?如果未登录能进行操作么?需要进行登录提醒么?

  c、多次连续的点击,会造成什么影响?是否给予反馈?

  d、操作之后得到的数据需要缓存么?缓存到哪里?清理缓存的时机是什么?

  e、一些操作实施后,引起的变化是什么时候显示出来?即可显示?此刻不显示,再次进入此页面时显示?还是此刻不显示,再次进入应用时显示?

  比如,聊天记录删除后,返回聊天页,是立即清空聊天记录还是再次进入时清空?

  总的来说,PRD属于操作层面的技能,要尽量有理有据,逻辑严密。

PRD学习笔记:一些需要注意的说明的更多相关文章

  1. JavaEE精英进阶课学习笔记《博学谷》

    JavaEE精英进阶课学习笔记<博学谷> 第1章 亿可控系统分析与设计 学习目标 了解物联网应用领域及发展现状 能够说出亿可控的核心功能 能够画出亿可控的系统架构图 能够完成亿可控环境的准 ...

  2. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  3. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  4. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  5. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  6. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  7. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  8. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  9. HTML学习笔记

    HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...

随机推荐

  1. CSS学习笔记之元素分类

    在讲解CSS布局之前,我们需要提前知道一些知识,在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div> ...

  2. STM32W芯片的JTAG口用于GPIO

    使用过程中发现STM32W芯片在驱动液晶SPI液晶时,在调试状态下可以正常工作但在通常运行情况下却没有任何显示! 经查发现我使用的两个端口PC0和PC3的电平很不正常,拉不高. 所以我就怀疑到IO口问 ...

  3. 【转】浏览器DNS 预取读技术的危害

    今天中午在http://news.ycombinator.com/news看到一篇文章标题: Saved 10 billion DNS queries per month by disabling D ...

  4. idea中output log4j中文乱码

    1.设置tomcat中的VM optins:-Dfile.encofing=UTF-8 2.idea安装目录bin文件夹中idea.exe.vmoptions.idea64.exe.vmoptions ...

  5. 如何在C++ Builder中使用OpenGL

    作者:太乙散数 摘要:用一个简单的例子,阐述了bcb中使用opengl的简单方法,包括初始化框架.旋转和平移图形.清除图像.初始化背景色以及在刷新时保持图像. 关键词:bcb6 opengl 旋转 清 ...

  6. C# 脚本代码自动登录淘宝获取用户信息

    C# 脚本代码自动登录淘宝获取用户信息   最近遇到的一个需求是如何让程序自动登录淘宝, 获取用户名称等信息. 其实这个利用SS (SpiderStudio的简称) 实现起来非常简单. 十数行代码就可 ...

  7. Python网络爬虫

    http://blog.csdn.net/pi9nc/article/details/9734437 一.网络爬虫的定义 网络爬虫,即Web Spider,是一个很形象的名字. 把互联网比喻成一个蜘蛛 ...

  8. Log4j、Log4j 2、Logback、SFL4J、JUL、JCL的比较

    Log4j.Log4j 2.Logback.SFL4J.JUL.JCL的比较 之前就知道有好几种日志框架,但是一直都是听别人讲,在什么时候该用何种logger,哪种logger比较好……一直对Log4 ...

  9. [置顶] Android事件—单选按键和下拉按键

    在平常的开发中单选按键和下拉按键是非常常用的2个点击事件.首先介绍下单选按键 1:单选按键,单选的主键是radiogroup 这个主键也是很重要的 首先介绍下主键的布局 <?xml versio ...

  10. XP系统安装ArcGIS10.0需要修改的一个配置

    1,右击我的电脑,查看属性. 2,选择“高级”选项卡,“启动和故障恢复”单击“设置”.   3,在“默认操作系统”中单击“编辑”:   4,在弹出的boot.ini文档中把操作系统改成相应的操作系统, ...