智能终端图形用户界面设计与实现
RADIO & TELEVISION INFORMATION RADIO & TELEVISION INFORMATION RADIO & TELEVISION INFORMATI
In Focus // RADIO & TELEVISION INFORMATION RADIO & TELE
特别关注 //
https://www.360docs.net/doc/3311119315.html, // 2011年8月 // RADIO & TELEVISION INFORMATION
//
//
29
1 引言
当前,国内NGB、IPTV等网络融合工作和业务开发正处于起步发展阶段。国际上,以Google TV、Apple TV、Android Market 和App Store为代表的新型融合业务终端系统和服务模式已经成为一种潮流,风靡世界。本文研究所涉及的智能终端,作为家庭综合多媒体应用平台的承载终端,以独立、开放的Android操作系统为基础,能够最大程度地便于数字电视产业链各环节核心竞争力培育和发挥,能最大程度地便于用户实现数字电视服务的自主选择及个性化服务呈现,是实现在三网融合基础上部署运营广播电视相关业务必不可少的一部分。
在整个智能终端软件系统中,图形用户界面技术占有非常重要的地位,它建立了用户与智能终端之间的人机交互多媒体界面,为用户操控智能终端提供了最直观的感受,因此设计功能丰富、可操控性强以及可靠性高的图形用户界面就成为了首当其冲的工作。
2 Android 用户界面开发介绍
本文研究的智能终端以Android平台为基础,因为Android 平台提供的控件非常完善,控件的使用与网页设计类似,尽量用parent_width等抽象长度,用Theme来定制风格,抽取所有的字串等信息进行本地化设计。整体界面设计写在“res/layout”下面的布局文件中,一般情况,一个布局文件对应一个界面。因此,设计智能终端的用户界面有点像写HTML代码,要先定出整体框架,再往框架中添加相应的控件。
Android生成屏幕有三种方式:XML配置生成,通过用户界面接口生成,直接用代码生成。在一个Android应用中,用户界面是由View和ViewGroup对象构建的。View和ViewGroup都有很多种类,而它们都是View类的子类。开发者可以根据MVC原则,UI应该与程序逻辑相分离,因此,在XML中定义UI结构是高度推荐的。此外,一个程序从一个屏幕方案调整到另一个也容易得多。Android应用程序的基础功能单元就是Activity类中的一个对象。
智能终端图形用户界面设计与实现
文/广播科学研究院 王丰 付明栋 冯海亮 施玉海/
摘要:智能终端作为数字家庭建设的核心环节,图形用户界面技术在其中占有非常重要的地位,它建立了用户与智能终端之间的人机交互多媒体界面,为用户操控智能终端提供了最直观的感受,本文设计的图形用户界面满足了美观性、易用性以及稳定性的设计原则,符合了未来人机交互界面发展的趋势。关键词:智能终端 Android 界面设计 交互式
return obj;}}
5 总结
本文重点研究了基于Android平台的家庭智能终端人机交互技术,设计了结合手柄控制、指点触摸控制以及传感器控制三种功能应用的终端控制程序,基本满足了用户对多样家庭娱乐与数字应用的交互需要。但是,为了顺应数字家庭服务发展的趋势,未来还需要在当前的工作基础上,加入手势识别和自动语音识别等新型的人机交互功能以满足用户准确、高效、轻松、愉快的操
作需要。
参考文献:
[1] 张庆丰译. 人机交互(第三版)[M]. 北京:电子工业出版社,
2007.
[2] 孟祥旭,李学庆.人机交互技术原理与应用[M]. 北京:清华大学出版社,2004.
[3] E2ECloud 工作室. 深入浅出Google Android .北京:人民邮电出版社, 2009.
[4] 余志龙,郑名杰等. Android SDK 开发范例大全.北京:人民邮电出版社,2009.
RADIO & TELEVISION INFORMATION
In Focus // RADIO & TELEVISION INFORMATION RADIO & TELEVISION INFORMATION RADIO & TELEVISION INFORMATION RADIO & TEL
特别关注 //
30 //
//RADIO & TELEVISION INFORMATION // 2011年8月 // https://www.360docs.net/doc/3311119315.html,
Activity可以做很多事,但是它自己并不会显示到屏幕上,需要使用View和ViewGroup控件搭配XML样式来进行设计。
2.1 View 和ViewGroup
任何一个View对象都将继承android.view.View类。它是一个存储有屏幕上特定的一个矩形布局和内容属性的数据结构。一个View对象可以处理测距、布局、绘图、焦点变换、滚动条、以及屏幕区域自己表现的按键和手势。ViewGroup是android.view. View-Group类的对象。ViewGroup是特殊的View对象,它的功能是去装载和管理一组下层的View和其他ViewGroup。ViewGroup可以为UI增加结构,并且将复杂的屏幕元素构建成一个独立的实体。
在Android平台上,一个Activity界面可以包含多个View和ViewGroup,通过这样的组合可以实现更复杂、更完美、更满足开发者需要的界面。如图1所示,用View树和ViewGroup节点来定义一个Activity的UI,这棵树可以如开发者需要那样简单或者复杂,并且可以使用Android的预定义widget和layout或者开发者自定义的View类型来构建它。
2.2 事件处理
事件就是用户与UI (图形界面)交互时所触发的操作,如当遥控器上键被按下时就出发了“按下”事件,当松开按键时又会触发“弹起”事件。在Android中,这些事件都将被传送到事件处
理器,它是一个专门接收事件对象并对其进行翻译和处理的方法。Java程序中,实现与用户交互功能的控件都需要通过事件来处理,需要指定控件所用的事件监听器。当然,Android同样需要设置事件监听器。另外,在Android下,View同样可以相应按键和触屏两种事件,分别如下:
(1)boolean onKeyDown(int keyCode,KeyEvent event)用于响应按键按下。
(2)boolean onKeyMultiple(int keyCode,int repeatCount, KeyEvent event)用于响应按键重复点击。(3)boolean onKeyUp(int keyCode,KeyEvent event)用于响应按键释放,onTouchEvent (MotionEvent event)用于响应触摸屏事件。
3 智能终端用户界面设计
设计一款优秀的应用界面的必备条件是:内容清楚、指示明
白、屏幕美观和有亲切感。应用界面的设计是对控件进行适当的取舍及功能的选择和处理的过程。在程序设计中,需要对设计的方法进行反复推敲、琢磨,才能使其达到完美的境界。因此,本文所研究的智能终端用户界面的设计既要符合大众用户的审美观又要满足用户的基本需求。
按照智能终端功能需求,整个用户一级界面的设计包含几个方面:用户主界面、电子节目指南界面、应用服务界面、游戏娱乐界面、系统设置界面、VOD视频点播界面、文件管理界面以及互联网界面。其类图结构如图1所示。
下面本文对一级部分菜单界面进行介绍。
3.1 HomeActivity
HomeActivity作为主界面类,用于用户打开智能终端设备后的主界面显示,同时为其他功能界面提供链接。整个主界面的布局采用线性布局垂直分布,将主菜单置于界面的中间,采用自定义的CoverFlow类实现主菜单的循环选择。CoverFlow类继承自Android的Gallery控件,该控件是用反射机制来动态读取资源中的图片。HomeActivity类图如图2。
类图中可以看出,菜单选项通过CoverFlow类读取相应的选项图标资源,并通过OnItemClickListener()方法为每一张图标添加事件监听,以触发相应的菜单选项。另外,在整个动态菜单设计中,我们同时添加了图片渐进的动画效果,以增进用户的体验感。
3.2 EpgPadActivity
智能终端的一个基本应用就是数字电视播放,因此设计界面友好的EPG
显示界面就显得
尤为重要。Epg-PadActivity类作为EPG显示主界面,主要用于显示窗口化播放
器mVideoView、
频道列表mEpgChannel-ListView、节目列表mEpgPro-gramListView以及广告位m Ad-
view。其类图如
HomeActivity
EpgPadActivity
EntertainmentAc
tivity
ApplicationActi vity
BrowserActivity
VODFirstMenuAct ivity
FileMangerActiv ity SystemSettingAc
tivity
RADIO & TELEVISION INFORMATION RADIO & TELEVISION INFORMATION RADIO & TELEVISION INFORMATI
In Focus // RADIO & TELEVISION INFORMATION RADIO & TELE
特别关注 //
https://www.360docs.net/doc/3311119315.html, // 2011年8月 // RADIO & TELEVISION INFORMATION
//
//
31
图3所示。
其中,initEpgPad用来实现频道列表、节目列表以及背景
的初始化,而initTvPad用来实现视频播放器的初始化,并通过OnItemSelectedListener()方法添加事件监听。初始化后,通过DataManager类管理接收到的频道或节目数据信息,并在相应的列表中进行显示。
3.3 EntertainmentActivity
EntertainmentActivity类提供了智能终端的游戏娱乐界面,按照功能需求划分,该界面我们设置了四个菜单选项,分别为影视、音乐、图片和游戏,点击不同的选项,分别进入不同的功能菜单。其类图如图4所示。
该类中,四个菜单选项分别采用了四个Button控件,并在其上添加了事件监听。
3.4 ApplicationActivity
应用服务界面ApplicationActivity类设计相对简单,因为An-droid平台本身自带有应用服务界面,所以智能终端应用服务界面只需链接到Android应用服务界面上,并对其基本控件元素及背景按照设计需求进行优化即可。其类图如图5所示。
除了以上的主要界面外,对于系统设置界面、VOD视频点播界面、文件管理界面以及互联网界面等,由于设计风格类似,这里就不多介绍。
4 智能终端用户界面实现
基于以上用户界面设计方案,智能终端用户界面在保证其功能性的同时,要达到美观易用。因此在界面的整体设计上,我们进行了风格的统一,采用了蓝色作为背景图案的主基调,并搭配彩虹色作为调配色,满足了大众用户的审美需要,实现了良好的用户体验。其界面风格设计如图6所示。
5 总结
本文设计的智能终端图形用户界面充分考虑了大众用户的显示操作需求,满足了用户界面美观性、易用性以及稳定性的设计原则,符合了未来人机交互界面发展的趋势。但是界面整体的设计在特效以及3D图形显示上还有欠缺,今后应该在界面的华丽度上下功夫,多采用3D图形技术以赋予用户界面更高的体验感。
参考文献
[1]姚昱曼,刘卫国.Android的架构与应用开发研究.计算机系统应用,2008(11):110-112.
[2]汪奕磊,胡波,王宏远等.数字电视机顶盒的GUI设计与编程[J].电视技术,2002(2):20—22.
[3]熊刚.基于Android的智能手机的设计与实现[D].武汉:武
汉理工大学,2010.