当下 一些比较流行的android软件在首次安装启动时会显示一连串的whatsnew界面。whatsnew除了告诉用户软件版本升级带来的新功能,同时也可以是软件使用的操作指引,使用户更快熟悉软件。下面是一些软件类似功能的软件的截图.
从截图看whatsnew的每一页是一幅图片和描述文字,不同的页面可以通过拨动来切换。文字是对图片的阐述,而图片和文字都是对软件某个功能的描述。从用户的角度我认为图片最好清晰易懂文字起到辅助理解,最好用户一眼就能看懂;而且页面不宜过多,过多的页面拨动会使人感觉厌倦。
whatsnew的实现方式可以多种。比如可以使用ViewFlipper、Gallery等等。下面我采用Gallery来实现一个whatsnew的原型。
Gallery现实whatsnew需要对它做一些处理:
1,默认情况下gallery显示的view是居中显示的(见下图),左右view的一部分跟中间的view显示在同一屏幕内,所以要设置view填充全屏;
2,gallery在拨动的时候会导致视图滚动而且会根据你的拨动力度滚动多张,所以要重载onFling处理拨动效果;
3,gallery默认情况在左右两边会出现阴影效果需要去除;
4,如果gallery中的每一个视图内设置了OnClickListener会导致gallery不能拨动(本文未涉及点击事件处理,不加讨论)。
下面贴实现的核心代码:
private View buildGuide(Context ctx) {
final Gallery gallery = new Gallery(ctx) {
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
if (this.getSelectedItemPosition() == WHATSNEW.length - 1)
finish();
onKeyDown((e2.getX() > e1.getX()) ? KeyEvent.KEYCODE_DPAD_LEFT : KeyEvent.KEYCODE_DPAD_RIGHT, null);
return true;
}
};
gallery.setAdapter(new ArrayAdapter<Integer>(ctx, 0, WHATSNEW) {
public View getView(int position, View convertView, final ViewGroup parent) {
ImageView image = null;
if (convertView == null) {
image = new ImageView(getContext());
image.setScaleType(ScaleType.FIT_XY);
image.setLayoutParams(new Gallery.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
} else {
image = (ImageView) convertView;
}
image.setBackgroundColor(Color.BLACK);
image.setImageResource(WHATSNEW[position]);
return image;
}
});
gallery.setSpacing(0);
gallery.setPadding(0, 0, 0, 0);
gallery.setFadingEdgeLength(0);
return gallery;
}
分享到:
相关推荐
这些新特性涵盖了用户界面、性能、3D打印、装配体管理、成本估算和工程图纸等多个方面。 首先,用户界面在2016版本中得到了重新设计,更加符合现代的设计标准,尤其是对于使用高分辨率屏幕的用户,新界面提供了更好...
- 用户界面中引入了突出显示活动窗口功能,以及加速缩放功能,提高了工作效率。 - 欢迎对话框的背景颜色也提供了更多的个性化选项。 3. 系统和文档属性改进 - 用户可以对系统选项和文档属性进行更改,包括颜色...
《foo_whatsnew(新功能查看器) v1.1.1 中文版:深入了解软件更新与增强功能》 在当今快速发展的信息技术领域,软件更新是保持系统安全、提升性能和增加新特性的关键环节。foo_whatsnew(新功能查看器) v1.1.1 中文版...
新功能方面,文档提到了用户界面的改进,例如开启ClearType文本,通过关联工具栏应用标准配合,FeatureManager设计树对选择的响应,CommandManager中包含的SmartMates,按套索选择项目,粘性设置,文字和按钮大小的...
但从“WhatsNew_PE(Accumark v10”这一标题来看,我们可以推测这一版本可能包括了一系列的新特性或改进。Accumark v10作为该软件的一个重要版本,通常会包含以下类型的更新: 1. **增强的用户界面**:提供更直观的...
用户界面方面的改进,比如CommandManager菜单的更改、以不同语言显示特征名称、将多个连续特征拖动到文件夹中,以及增强型大型工具提示,这些都让软件操作更加直观与高效。特别是新的大型工具提示,它提供了更丰富的...
3. **易管理性/易用性(Manageability/Ease of Use):**更新可能包括增强的用户界面和管理工具,使得备份和恢复操作更加直观和高效。 4. **重复数据删除(Deduplication):**新版本可能扩展了重复数据删除技术,...
【标题】"WhatsNew File Creator" 是一个开源项目,旨在简化WHATSNEW和CHANGES文件的制作和维护过程。在IT行业中,这类文件通常用于记录软件的更新历史和变更细节,便于用户和开发者追踪版本变化。 【描述】该工具...
图标定义(Icon Definitions in BMIDE)的改进可能涉及到了增强用户界面的清晰度和易用性。用户现在可以更直观地识别不同的对象和状态,这有助于提高工作效率,减少误解和误操作的可能性。 总的来说,Teamcenter ...
【标题】"WhatsNew"是一个专门用于Android应用的开源库,它的主要功能是自动向用户展示应用程序的更新日志。这个库旨在帮助开发者更方便、更直观地向用户呈现应用程序的最新改动,提升用户体验,同时也增加了用户对...
随着“D7_whats_new.rar_NEW”这个压缩包的出现,我们有机会深入了解Delphi 7相较于前代的更新和改进,这些新特性极大地提升了开发效率和程序性能。 1. **VCL组件库增强**:Delphi 7的Visual Component Library ...
还有“WhatsNew.txt”文件,用于更新日志,让使用者了解软件的最新改进和添加的功能。 压缩包中的其他文件,如“piskvork_CZ.txt”和“piskvork.txt”,很可能是软件的使用手册或说明文档,分别用捷克语和英语提供...
针对日益增长的对实时数据监控的需求,BusinessObjects XI 3.0 推出了全新的仪表板功能,支持自定义设计,并且可以将多个关键指标集中显示在一个界面上。此外,该版本还引入了更多种类的图表样式,如热力图、树状图...
用户可以直接从项目浏览器中启动报告,无需再进入单独的报告编辑界面,极大地提高了工作效率。 ##### 自定义变量列表(Custom Variable Lists) 自定义变量列表允许用户创建个性化的变量组合,可以根据具体的研究...
接下来,我们将深入探讨“Whats_new_in_homekit.zip”中的主要内容,揭示HomeKit近期的重大更新。 1. **多用户共享访问**:以往,HomeKit设备的控制主要由一位家庭成员的iPhone或iPad进行,而现在,多用户共享访问...
在Android中,我们通常会使用XML文件来定义布局,如`activity_whats_new.xml`。布局可以是线性布局(LinearLayout)、相对布局(RelativeLayout)或约束布局(ConstraintLayout),根据设计需求选择合适的布局管理器...