国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

手機游戲按鈕交互實現(xiàn)

2015-06-24 13:16:59李姝博
軟件導刊 2015年6期
關鍵詞:接口交互手機游戲

摘要:手機是當今使用率很高的移動設備,開發(fā)手機游戲離不開交互響應。針對按鈕的交互介紹了兩種事件響應以及它們的區(qū)別,對如何實現(xiàn)按鈕的交互響應、如何實現(xiàn)表單按鈕的交互響應、不同的案例應采用何種交互方式進行了研究。

關鍵詞:手機游戲;事件響應;交互;綁定;接口

DOIDOI:10.11907/rjdk.151153

中圖分類號:TP302

文獻標識碼:A 文章編號:16727800(2015)006005902

作者簡介作者簡介:李姝博(1981-),女,遼寧阜新人,碩士,阜新高等??茖W校計算機信息技術系講師,研究方向為游戲軟件、計算機多媒體技術。

1 按鈕的事件響應

通過實例來說明按鈕事件響應的實現(xiàn)方法:制作輸入短信的界面,實現(xiàn)編輯短信的功能,并設有刪除按鈕,即單擊刪除按鈕實現(xiàn)刪除的功能。

首先制作界面,在界面上添加對象,應該注意的是按鈕不能直接放到界面上,要先將其放到TextBox的對象tb上,然后通過tb放到界面上,這時單擊按鈕沒有任何作用。此時按鈕還不能做事情,也就是說不能響應事件,只有具有一定事件響應功能的命令按鈕才有實際作用。

1.1 實現(xiàn)事件監(jiān)聽機制

所謂實現(xiàn)事件監(jiān)聽機制就是讓按鈕所在的類實現(xiàn)事件響應[1],也就是在該類上添加一個“耳朵”,能監(jiān)聽到有人單擊按鈕。這個“耳朵”就是按鈕的事件響應接口,即CommandListener。具體做法:編寫一個類去實現(xiàn)這個監(jiān)聽接口,即在這個類上加一個“耳朵”:

public class 類名 implements CommandListener{}

實現(xiàn)事件響應接口還有一個簡單的做法:眾所周知,Java支持一個類單重繼承并實現(xiàn)多個接口,所以不必重新編寫類,只要在原來類的基礎上實現(xiàn)接口就可以了,即在原來類頭后面直接加上 implements CommandListener即可。

1.2 接口功能設計

接口是抽象的,要想實現(xiàn)接口功能,還得仰仗接口中的方法,因此需要將接口中的方法重寫,也就是要把接口中所有的函數(shù)都重新寫到接口的類里。CommandListener接口中有一個CommandAction(Command c ,Displayable d)函數(shù),需要將這個函數(shù)寫到上面的類中,實際操作中不需要我們?nèi)?,當完成上一步添加完接口之后,在類頭會出現(xiàn)錯誤信息,單擊錯誤信息之后會顯示“添加未實現(xiàn)的方法”,單擊即可把CommandAction添加到類中,如圖1所示。

在這個函數(shù)中有兩個參數(shù),第一個參數(shù)表示發(fā)出事件的Command按鈕,就是用戶按了哪個按鈕,第二個參數(shù)表示發(fā)出事件的Displayable對象。Command是依附于Displayable的,因此,在事件處理類中,不但可以處理事件,還可以知道事件是由哪個Command按鈕發(fā)出,以及該Command按鈕所在的Displayable對象。

1.3 將事件源和事件響應對象綁定

事件編寫完后,只是能夠處理事件,并不能保證Command按鈕單擊后會觸發(fā)事件,因此還需要將Command按鈕和事件處理類(CommandListener)進行綁定。由于Command是依附于Displayable的,因此,綁定工作可由Displayable的對象tb來完成,即tb.setCommandListener(this)。

1.4 具體事件編寫

前3步都完成之后,該程序應該可以和用戶進行交互了。但是交互的具體內(nèi)容是什么,用戶具體要讓程序?qū)崿F(xiàn)什么功能,去完成什么任務,是本步驟要實現(xiàn)的。單擊刪除按鈕實現(xiàn)刪除功能,完成這個功能的語句寫到哪里?前面已經(jīng)提到,需要寫到CommandAction(Command c ,Displayable d)函數(shù)中,具體代碼如下[2]:

這就是按鈕事件響應的全過程,只要是單擊按鈕實現(xiàn)功能就需要完成以上4個步驟。對于不同案例,前3個步驟基本不變,變化的只是具體事件。

2 表單元素事件響應

表單的事件響應有兩種:表單元素按鈕事件響應,即ItemCommand事件;表單元素狀態(tài)改變事件響應,即ItemState事件。

2.1 ItemCommand事件響應

同樣,本文通過實例來說明ItemCommand事件響應實現(xiàn)方法。

制作一個QQ登陸界面,QQ號文本框被激活后,選擇左下角的“清除內(nèi)容”按鈕,就能在QQ號框中清除光標前的字符;密碼文本框被激活之后,同樣選擇右下角的“清除內(nèi)容”按鈕,就能在密碼框中清除光標前的字符。同樣是按鈕的交互,該案例能不能用上面的按鈕事件響應方法去實現(xiàn)呢?答案是否定的,因為本例中,雖然有一個命令按鈕“清除內(nèi)容”,但是該命令按鈕所作的事情和具體的文本框有關,通過CommandListener雖然可以知道是哪一個命令按鈕被選擇,卻無法知道當前光標在哪個文本框內(nèi),也就無法確定到底要清除誰的內(nèi)容。

由此可見,該實例可以使用表單元素的事件響應,通過它可以進行此處的事件響應處理。具體實現(xiàn)和按鈕的事件響應很類似,也要經(jīng)過四步,這里做簡要敘述,重點介紹兩者的區(qū)別。

2.1.1 寫事件處理類

實現(xiàn)Javax.microedition.lcdui. ItemCommandListener;(簡單的方法是直接在類頭的后面加上兩個單詞:Implements ItemCOmmandListener)。

2.1.2 重寫ItemCommandListener中的CommandAction方法

CommandAction(Command c ,item i),特別地,前面分析的按鈕事件響應中該函數(shù)的第二個參數(shù)是Displayable,而在此是item,這就是主要的區(qū)別,也就是通過這個函數(shù)能解決前面所說的按鈕事件響應不能解決的問題,即:“通過CommandListener雖然可以知道是哪一個命令按鈕被選擇,卻無法知道當前光標在哪個文本框內(nèi),也就無法確定到底要清除誰的內(nèi)容”,所以該案例必須用表單的事件響應去解決。

2.1.3 將事件源和事件響應對象綁定

在本例中即為TextField和ItemCommandListener綁定。具體做法:

tf1. setItemCommandListener(this)

tf2. setItemCommandListener(this)

因為這里有兩個文本框,所以綁定時要注意一定是兩個TextField的對象分別和該類綁定。

2.1.4 具體事件的實現(xiàn)

值得注意的是,CommandAction(Command cmd ,item item)方法中的兩個參數(shù)是做了修改的,即變?yōu)镃ommandAction(Command c ,item i)。

這就是表單按鈕的事件響應實現(xiàn)方法,與按鈕的事件響應的主要區(qū)別在于第二步,也正是因為第二步中函數(shù)的參數(shù)不同,實現(xiàn)功能也就不同。

2.2 ItemState事件

ItemState事件相當于在Item的狀態(tài)發(fā)生改變時發(fā)出命令。例如,制作一個短信發(fā)送界面,在界面中,首先出現(xiàn)的是短信編輯界面,界面左下方有一個“返回”按鈕,點擊后能夠返回到歡迎界面;當在文本框中輸入短信后,左下方的按鈕自動變?yōu)椤扒宄谋尽?,可以將光標左邊的文本清除。這里的“返回”按鈕變?yōu)椤扒宄谋尽卑粹o就是應用ItemState事件來實現(xiàn)的。簡單做法如下。

2.2.1 寫事件處理類

3 結(jié)語

無論是怎樣的事件響應,都應該先制作界面,然后按步驟去實現(xiàn)按鈕的交互。制作界面應注意的是:按鈕事件響應中的按鈕是放在Displayable類上的,而表單按鈕的事件響應按鈕一定要放到表單(Item)上[3],綁定也是有所區(qū)別的。用戶在應用這兩種事件響應時應多加注意,以免達不到理想效果。

參考文獻:

[1] 高宇航,王琨,袁世雄.注重用戶體驗的觸屏手機交互設計研究[J].黑龍江科學,2014(4):261262.

[2] 郭克華.Java ME 移動開發(fā)實例精講[M].北京:清華大學出版社,2011.

[3] 陳燕.基于Android平臺的UX手機交互主題的設計與實現(xiàn)[J].電腦開發(fā)與應用,2014(5):6063.

責任編輯(責任編輯:杜能鋼)

猜你喜歡
接口交互手機游戲
讓手機游戲成為傳統(tǒng)文化的傳播新渠道
傳媒評論(2018年3期)2018-06-21 08:16:28
手機游戲?qū)Υ髮W生的負面影響及對策分析
某電站工程設計管理與施工、質(zhì)量控制接口關系研究
脫硝數(shù)據(jù)傳輸系統(tǒng)遠程無線監(jiān)控技術的研發(fā)與應用
中文信息(2016年10期)2016-12-12 12:56:55
西門子SPPA—T3000在委內(nèi)瑞拉燃機電廠中的應用與接口
中國市場(2016年32期)2016-12-06 11:16:14
淺析色彩在人機交互界面中的作用
基于圖形用戶界面的多點觸控交互技術綜述
虛擬現(xiàn)實技術概論
科技視界(2016年11期)2016-05-23 11:28:14
中俄網(wǎng)絡語言編碼接口問題的研究
科技視界(2016年3期)2016-02-26 10:14:32
關于信息化教育模式的大學教育變革的探討
科技視界(2016年5期)2016-02-22 12:54:54
太保市| 锡林郭勒盟| 屯昌县| 中山市| 大埔县| 德惠市| 会昌县| 定兴县| 彭州市| 于都县| 玛曲县| 吴江市| 天柱县| 阳原县| 洞口县| 沈丘县| 昌黎县| 静安区| 开鲁县| 海丰县| 固原市| 中西区| 斗六市| 德昌县| 上栗县| 迁西县| 青神县| 齐齐哈尔市| 长岭县| 甘南县| 临猗县| 思南县| 永吉县| 苍梧县| 综艺| 崇明县| 南乐县| 临澧县| 城口县| 宜良县| 安康市|