本公開涉及人機(jī)交互技術(shù)領(lǐng)域,更具體地,涉及一種觸摸事件響應(yīng)處理方法及系統(tǒng)。
背景技術(shù):
隨著移動(dòng)通信技術(shù)的快速發(fā)展,在觸控終端上出現(xiàn)了越來越多的觸控應(yīng)用。在觸控應(yīng)用的運(yùn)行過程中,觸控終端按照一定的布局向用戶呈現(xiàn)各個(gè)視圖以及操作界面。
目前,在一些觸控應(yīng)用中,需要不同的視圖(View)來對觸摸事件進(jìn)行響應(yīng),以實(shí)現(xiàn)不同的功能。例如,在一些游戲應(yīng)用中,一方面,需要對游戲引擎視圖上的UI(User Interface,用戶界面)控件進(jìn)行觸摸控制,以實(shí)現(xiàn)虛擬角色的攻擊、行走、對話等操作;另一方面,需要對地圖視圖(MapView)進(jìn)行觸摸控制,以實(shí)現(xiàn)地圖的滑動(dòng)、縮放、點(diǎn)擊等操作。
然而,在地圖視圖的層級高于游戲引擎視圖的層級的情況下,即在游戲引擎視圖上渲染地圖視圖的情況下,地圖視圖會(huì)覆蓋游戲引擎視圖,導(dǎo)致游戲引擎視圖上的UI控件無法顯示。
另一方面,在游戲引擎視圖的層級高于地圖視圖的層級的情況下,雖然可以在地圖視圖上方顯示游戲引擎視圖的UI控件,但是由于游戲引擎視圖是全屏顯示,所以觸摸事件被游戲引擎視圖攔截而導(dǎo)致地圖不能進(jìn)行正常的滑動(dòng)、縮放、點(diǎn)擊等操作。
此外,希望的是,先由游戲引擎視圖接收觸摸事件,在游戲引擎視圖不響應(yīng)觸摸事件的情況下,才將觸摸事件傳遞至地圖視圖。然而,無論在iOS平臺還是在Android平臺下,觸摸事件都只能從子視圖傳遞給父視圖,無法在同樣層級的兩個(gè)視圖之間傳遞,并且游戲引擎視圖不能作為地圖視圖的子視圖,所以這種方案也不可行。
需要說明的是,在上述背景技術(shù)部分公開的信息僅用于加強(qiáng)對本公開的背景的理解,因此可以包括不構(gòu)成對本領(lǐng)域普通技術(shù)人員已知的現(xiàn)有技術(shù)的信息。
技術(shù)實(shí)現(xiàn)要素:
本公開的目的在于提供一種觸摸事件響應(yīng)處理方法及系統(tǒng),進(jìn)而至少在一定程度上克服由于相關(guān)技術(shù)的限制和缺陷而導(dǎo)致的一個(gè)或者多個(gè)問題。
根據(jù)本公開實(shí)施例的第一方面,提供一種觸摸事件響應(yīng)處理方法,所述方法包括:配置第一視圖和第二視圖,其中所述第一視圖的層級高于所述第二視圖的層級;當(dāng)接收到觸摸事件時(shí),判斷所述觸摸事件發(fā)生的位置;當(dāng)所述觸摸事件發(fā)生在所述第一視圖的區(qū)域時(shí),由所述第一視圖對所述觸摸事件進(jìn)行響應(yīng);當(dāng)所述觸摸事件發(fā)生在所述第二視圖的不與所述第一視圖重疊的區(qū)域時(shí),由所述第二視圖對所述觸摸事件進(jìn)行響應(yīng)。
本公開的一種示例性實(shí)施例中,所述第一視圖為用戶交互視圖,其中所述用戶交互視圖包括一個(gè)或多個(gè)子視圖,所述子視圖為按鈕視圖、文字視圖、圖片視圖中的一種或者多種。
本公開的一種示例性實(shí)施例中,所述用戶交互視圖的各個(gè)子視圖采用節(jié)點(diǎn)樹的形式進(jìn)行管理,所述方法還包括:將所述各個(gè)子視圖添加到相應(yīng)平臺的渲染節(jié)點(diǎn)上。
本公開的一種示例性實(shí)施例中,所述用戶交互視圖包括一個(gè)或者多個(gè)用戶交互接口,所述方法還包括:采用相應(yīng)平臺的原生語言編寫所述用戶交互接口。
本公開的一種示例性實(shí)施例中,所述方法還包括:給所述用戶交互視圖的各個(gè)子視圖分別設(shè)置唯一的標(biāo)識;保存所述唯一的標(biāo)識與各個(gè)子視圖之間的映射關(guān)系。
本公開的一種示例性實(shí)施例中,所述方法還包括:配置第三視圖,其中所述第三視圖的層級低于所述第二視圖的層級。
根據(jù)本公開實(shí)施例的第二方面,提供一種觸摸事件響應(yīng)處理系統(tǒng),所述系統(tǒng)包括:配置模塊,用于配置第一視圖和第二視圖,其中所述第一視圖的層級高于所述第二視圖的層級;判斷模塊,用于當(dāng)接收到觸摸事件時(shí),判斷所述觸摸事件發(fā)生的位置;第一響應(yīng)模塊,用于當(dāng)所述觸摸事件發(fā)生在所述第一視圖的區(qū)域時(shí),由所述第一視圖對所述觸摸事件進(jìn)行響應(yīng);第二響應(yīng)模塊,用于當(dāng)所述觸摸事件發(fā)生在所述第二視圖的不與所述第一視圖重疊的區(qū)域時(shí),由所述第二視圖對所述觸摸事件進(jìn)行響應(yīng)。
本公開的一種示例性實(shí)施例中,所述第一視圖為用戶交互視圖,其中所述用戶交互視圖包括一個(gè)或多個(gè)子視圖,所述子視圖為按鈕視圖、文字視圖、圖片視圖中的一種或者多種。
本公開的一種示例性實(shí)施例中,所述用戶交互視圖的各個(gè)子視圖采用節(jié)點(diǎn)樹的形式管理,所述系統(tǒng)還包括:添加模塊,用于將各個(gè)子視圖添加到相應(yīng)平臺的渲染節(jié)點(diǎn)上。
本公開的一種示例性實(shí)施例中,所述用戶交互視圖包括采用相應(yīng)平臺的原生語言編寫的一個(gè)或者多個(gè)用戶交互接口。
本公開的一種實(shí)施例中的觸摸事件響應(yīng)處理方法及系統(tǒng),可以通過配置層級比第二視圖的層級高的第一視圖,并且通過判斷觸摸事件的位置來確定響應(yīng)該觸摸事件的視圖。與現(xiàn)有技術(shù)相比,不會(huì)形成一個(gè)視圖阻攔另一視圖操作的情況,使得觸摸事件能夠分別對不同層級的視圖進(jìn)行操作。
應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本公開。
附圖說明
此處的附圖被并入說明書中并構(gòu)成本說明書的一部分,示出了符合本公開的實(shí)施例,并與說明書一起用于解釋本公開的原理。顯而易見地,下面描述中的附圖僅僅是本公開的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。在附圖中:
圖1示意性示出了本公開的示例性實(shí)施例中的一種觸摸事件響應(yīng)處理方法的流程圖;
圖2示意性示出了本公開的示例性實(shí)施例中的各個(gè)視圖的一種節(jié)點(diǎn)樹管理方式的示意圖;
圖3示意性示出了本公開的示例性實(shí)施例中的各個(gè)視圖的另一種節(jié)點(diǎn)樹管理方式的示意圖;
圖4示意性示出了本公開的示例性實(shí)施例中的另一種觸摸事件響應(yīng)處理方法的流程圖;
圖5示意性示出了本公開示例性實(shí)施例中一種觸摸事件響應(yīng)處理系統(tǒng)的方框圖。
具體實(shí)施方式
現(xiàn)在將參考附圖更全面地描述示例實(shí)施方式。然而,示例實(shí)施方式能夠以多種形式實(shí)施,且不應(yīng)被理解為限于在此闡述的范例;相反,提供這些實(shí)施方式使得本公開將更加全面和完整,并將示例實(shí)施方式的構(gòu)思全面地傳達(dá)給本領(lǐng)域的技術(shù)人員。所描述的特征、結(jié)構(gòu)或特性可以以任何合適的方式結(jié)合在一個(gè)或更多實(shí)施方式中。在下面的描述中,提供許多具體細(xì)節(jié)從而給出對本公開的實(shí)施方式的充分理解。然而,本領(lǐng)域技術(shù)人員將意識到,可以實(shí)踐本公開的技術(shù)方案而省略所述特定細(xì)節(jié)中的一個(gè)或更多,或者可以采用其它的方法、組元、裝置、步驟等。在其它情況下,不詳細(xì)示出或描述公知技術(shù)方案以避免喧賓奪主而使得本公開的各方面變得模糊。
此外,附圖僅為本公開的示意性圖解,并非一定是按比例繪制。圖中相同的附圖標(biāo)記表示相同或類似的部分,因而將省略對它們的重復(fù)描述。附圖中所示的一些方框圖是功能實(shí)體,不一定必須與物理或邏輯上獨(dú)立的實(shí)體相對應(yīng)。可以采用軟件形式來實(shí)現(xiàn)這些功能實(shí)體,或在一個(gè)或多個(gè)硬件模塊或集成電路中實(shí)現(xiàn)這些功能實(shí)體,或在不同網(wǎng)絡(luò)和/或處理器裝置和/或微控制器裝置中實(shí)現(xiàn)這些功能實(shí)體。
本示例性實(shí)施方式中首先提供了一種觸摸事件響應(yīng)處理方法,該觸摸事件響應(yīng)處理方法主要應(yīng)用于一觸控終端。該觸控終端例如可以為手機(jī)、平板電腦、筆記本電腦、游戲機(jī)、PDA(Personal Digital Assistant,掌上電腦)等各種具備觸控屏幕的電子設(shè)備。但需要說明的是,在部分非觸控終端中也可能通過模擬器等方式將鍵盤以及鼠標(biāo)操作模擬為觸控操作,這種方式同樣可以視為本公開中所述的觸控終端。參考圖1,所述觸摸事件響應(yīng)處理方法可以包括以下步驟。
S11:配置第一視圖和第二視圖,其中所述第一視圖的層級高于所述第二視圖的層級。
在示例性實(shí)施例中,所述第一視圖可以為用戶交互視圖(UI View)。
在示例性實(shí)施例中,所述第二視圖可以為地圖視圖,例如在游戲引擎下集成的第三方的LBS(Location Based Service,基于位置服務(wù))地圖。需要說明的是,本發(fā)明并不以此為限,所述第二視圖可以是觸控終端中任意一個(gè)相關(guān)的應(yīng)用。
需要說明的是,本發(fā)明實(shí)施例中的視圖(View)可以是代表屏幕上的一個(gè)矩形區(qū)域。其中各種UI控件都屬于View。例如,iOS平臺上所有能看到的內(nèi)容都是View或其子類。
下面的實(shí)施例中以所述第一視圖為用戶交互視圖,第二視圖為地圖視圖為例進(jìn)行說明。
其中所述用戶交互視圖UI View維護(hù)一個(gè)UIView的節(jié)點(diǎn)樹,UIView是相應(yīng)平臺中所有UI控件的父類。
在示例性實(shí)施例中,可以通過應(yīng)用平臺上的一接口將用戶交互視圖的層級設(shè)置成高于地圖視圖的層級。例如,在iOS平臺下,所述接口可以為UIView中的sendSubViewToBack。但本發(fā)明不以此為限,可以根據(jù)應(yīng)用平臺的不同,選擇相應(yīng)的接口完成該層級高低的設(shè)置。
其中所述用戶交互視圖包括一個(gè)或多個(gè)子視圖,所述子視圖為按鈕視圖、文字視圖、圖片視圖中的一種或者多種,但本發(fā)明不以此為限。
針對這些按鈕視圖、文字視圖、圖片視圖,可以通過節(jié)點(diǎn)樹的形式進(jìn)行管理。圖2示出了示例性實(shí)施例中的一種節(jié)點(diǎn)樹的管理形式。在平臺的根節(jié)點(diǎn)的下一層可以包括用戶交互視圖和地圖視圖,兩者之間是兄弟節(jié)點(diǎn)。例如,UIView根節(jié)點(diǎn)下由可以包括圖片視圖1、按鈕視圖、文字視圖以及圖片視圖2等子視圖。其中最上面的根節(jié)點(diǎn)可以是相應(yīng)平臺的根節(jié)點(diǎn)。
各個(gè)子視圖的節(jié)點(diǎn)樹管理形式并不以此為限。如圖3所示,在這些子視圖(如:按鈕視圖、文字視圖、圖片視圖)與UIView根節(jié)點(diǎn)之間還可以存在多個(gè)子視圖,這些子視圖可以作為所述按鈕視圖、文字視圖、圖片視圖的父視圖,并可以用于對所述子視圖進(jìn)行進(jìn)一步管理,本示例性實(shí)施方式中對此不做特殊限定。
例如,UIView根節(jié)點(diǎn)的下一層包括三個(gè)子視圖:子視圖1、子視圖2、和子視圖3。其中,子視圖1的下一層又可以包括圖片視圖1和按鈕視圖,子視圖2的下一層又可以包括圖片視圖2,子視圖3的下一層又可以包括圖片視圖3和文字視圖。這里圖片視圖1和按鈕視圖是子視圖1的子視圖(下級視圖);反之,子視圖1是圖片視圖1和按鈕視圖的父視圖(上級視圖)。同理,圖片視圖2是子視圖2的子視圖,子視圖2是圖片視圖2的父視圖。
需要說明的是,雖然上述圖3例舉了UIView的三層節(jié)點(diǎn)樹管理形式,但實(shí)際上UIView可以是二層或者二層以上的任意層節(jié)點(diǎn)樹管理形式,各個(gè)節(jié)點(diǎn)層中的各個(gè)子視圖中包括的圖片視圖、按鈕視圖、文字視圖的數(shù)量也不受限制。
在示例性實(shí)施例中,所述方法還包括:配置第三視圖,其中所述第三視圖的層級低于所述第二視圖的層級。
其中所述第三視圖也可以是安裝于觸控終端中的任意應(yīng)用,例如游戲引擎視圖。
繼續(xù)參考圖3,游戲引擎視圖、用戶交互視圖以及地圖視圖之間是兄弟節(jié)點(diǎn)的關(guān)系。其中游戲引擎視圖的層級低于地圖視圖的層級,地圖視圖的層級低于用戶交互視圖的層級。這里游戲引擎視圖不用于UI交互,UI控件的顯示由UIView來完成。
現(xiàn)有技術(shù)中,游戲引擎視圖用于承載游戲中所有場景和UI。由于游戲引擎視圖為全屏顯示,所以在地圖視圖的層級高于游戲引擎視圖的情況下,游戲引擎視圖的UI控件被地圖視圖覆蓋而無法顯示。本發(fā)明為了解決這一問題,開發(fā)了一個(gè)用戶交互視圖,該用戶交互視圖可以形成UIView根節(jié)點(diǎn)。該UIView包括游戲引擎視圖的各個(gè)UI控件,這些UI控件可以作為該UIView根節(jié)點(diǎn)的子視圖。在這種情況下,游戲引擎視圖不再進(jìn)行UI交互。
在示例性實(shí)施例中,所述方法還包括:針對不同的平臺,將這些子視圖添加到對應(yīng)的渲染節(jié)點(diǎn)上。例如,針對iOS平臺,可以將這些子視圖添加到UIWindow上;針對Android平臺,可以將這些子視圖添加到Dialog上。
根據(jù)本公開的示例性實(shí)施方式,所述觸摸事件響應(yīng)處理方法還可以包括給UIView根節(jié)點(diǎn)視圖的各個(gè)子視圖分別設(shè)置唯一的標(biāo)識,并且保存所述唯一的標(biāo)識與各個(gè)子視圖之間的映射關(guān)系。
也就是說,每一個(gè)子視圖都具有一個(gè)唯一的id,用于唯一標(biāo)識該子視圖。例如,可以通過字典的形式對其映射關(guān)系進(jìn)行保存,在所述UIView中,存在一個(gè)字典并對該字典進(jìn)行維護(hù),該字典記錄了每一個(gè)子視圖與其對應(yīng)的id的映射關(guān)系。
當(dāng)添加一子視圖時(shí),可以把該子視圖與其對應(yīng)的id的映射關(guān)系保存在字典中。
另外,當(dāng)刪除一子視圖時(shí),相應(yīng)地,在字典中也刪除該子視圖與其對應(yīng)的id的映射關(guān)系。
另外,當(dāng)需要將一子視圖添加到某個(gè)父節(jié)點(diǎn)上時(shí),首先可以在字典中查找出該父節(jié)點(diǎn),然后再完成子視圖的添加操作。
此外,當(dāng)需要對一子視圖進(jìn)行修改時(shí),可以通過字典將該子視圖找出,并執(zhí)行修改操作。
在本公開的示例性實(shí)施方式中,UIView還可以包括一個(gè)或者多個(gè)UI接口。所述UI接口可以包括顯示圖片、按鈕、文字以及縮放、旋轉(zhuǎn)等操作的接口。這些接口可以具有不同的功能。
其中int UI_addView(int parentUiId,float posX,float posY,float width,float height);用于實(shí)現(xiàn)往節(jié)點(diǎn)樹中加入一個(gè)視圖,此視圖會(huì)接收并攔截觸摸事件,一般作為一組UI組件的父節(jié)點(diǎn)使用。傳入父節(jié)點(diǎn)id(如果為0則添加到根節(jié)點(diǎn))、坐標(biāo)位置和矩形大小,將把此視圖添加到指定的父節(jié)點(diǎn)上,并返回此視圖的id。
int UI_addImage(int parentUiId,char*imgData,int data_len,float posX,float posY);用于往節(jié)點(diǎn)樹中加入一張圖片,傳入該圖片的數(shù)據(jù)以及位置,其中該圖片為一子視圖,并且將此圖片添加到指定的父節(jié)點(diǎn)上,并返回這個(gè)子視圖的id。
int UI_addScale9Image(int parentUiId,char*imgData,int data_len,float posX,float posY,float width,float height,float capInset1,float capInset2,float capInset3,float capInset4);類似UI_addImage,但允許圖片的九宮格顯示。
void UI_changeImage(int uiId,char*imgData,int data_len);用于修改一張圖片的數(shù)據(jù)。
int UI_addButton(int parentUiId,char*imgData_normal,int data_len_normal,char*imgData_over,int data_len_over,float posX,float posY,int callbackId,char*imgData_disabled,int data_len_disabled);用于往節(jié)點(diǎn)樹中加入一個(gè)按鈕,傳入父節(jié)點(diǎn)id、位置、各個(gè)狀態(tài)的圖片數(shù)據(jù),以及回調(diào)的id,在按鈕被點(diǎn)擊時(shí),將調(diào)用預(yù)先設(shè)好的回調(diào)函數(shù),并把回調(diào)id傳回給腳本,以便做按鈕點(diǎn)擊回調(diào)的處理。
int UI_addLabel(int parentUiId,float posX,float posY,const char*text,const char*font,int size,float r,float g,float b,int strokeWidth,float strokeR,float strokeG,float strokeB,float fixedWidth);用于往節(jié)點(diǎn)樹中加入一串文字,傳入父節(jié)點(diǎn)id、文字的位置、內(nèi)容、字體、大小、顏色、描邊等信息,返回該文字的唯一id。
此外,這些接口還包括刪除所有子視圖的接口、設(shè)置子視圖進(jìn)行旋轉(zhuǎn)的接口、設(shè)置子視圖的透明度的接口、移動(dòng)子視圖到指定位置的接口等。
例如,void UI_removeUI(int uiId);用于把一個(gè)UI組件從節(jié)點(diǎn)樹中刪除。
void UI_removeAllUI();用于刪除所有的UI組件。
void UI_getFrame(int uiId,float&x,float&y,float&w,float&h);用于獲得一個(gè)UI組件的矩形區(qū)域,包括位置和大小。
void UI_moveUI(int uiId,float posX,float posY,float time);用于移動(dòng)一個(gè)UI組件到某個(gè)特定的位置。
void UI_setUIScale(int uiId,float scaleX,float scaleY,float time);用于設(shè)置一個(gè)UI組件的縮放。
void UI_setUIRotation(int uiId,float angle,float time);用于設(shè)置一個(gè)UI組件的旋轉(zhuǎn)。
void UI_setUIOpacity(int uiId,float opacity,float time);用于設(shè)置一個(gè)UI組件的透明度。
void UI_setLabelText(int labelUiId,const char*text);用于修改一個(gè)文字類型UI組件的文字內(nèi)容,僅支持文字組件。
void UI_setButtonEnabled(int buttonId,bool enabled);用于設(shè)置一個(gè)按鈕類型UI組件是否可點(diǎn)擊,僅支持按鈕組件。
void UI_setUIVisible(int uiId,bool visible);用于設(shè)置一個(gè)UI組件的顯示/隱藏。
然而,本發(fā)明不限于此,還可以具有各種功能的接口。
為了更好地解決觸摸事件在不同層級之間的傳遞問題,優(yōu)選地采用原生語言對所述UI接口進(jìn)行編寫。例如,針對iOS平臺,采用Objective-C或swift對所述UI接口進(jìn)行編寫;針對Android平臺,采用Java對所述UI接口進(jìn)行編寫,但不限于此,其他應(yīng)用平臺可以使用其相應(yīng)的原生語言對所述UI接口進(jìn)行編寫。
將編寫好的各個(gè)UI接口統(tǒng)一封裝,再導(dǎo)出給腳本調(diào)用。在本公開的示例性實(shí)施方式中,腳本所采用的語言是Python,但不限于此,還可以使用其他腳本語言,本示例性實(shí)施方式中對此不做特殊限定。
S12:當(dāng)接收到觸摸事件時(shí),判斷所述觸摸事件發(fā)生的位置。
其中所述觸摸事件可以是用戶的手指或觸摸筆觸發(fā)的觸摸事件,但是不限于此,也可能通過模擬器等方式將鍵盤或鼠標(biāo)操作模擬為觸摸操作,本示例性實(shí)施方式中對此不做特殊限定。
S13:當(dāng)所述觸摸事件發(fā)生在所述第一視圖的區(qū)域時(shí),由所述第一視圖對所述觸摸事件進(jìn)行響應(yīng)。
對應(yīng)于本公開的示例性實(shí)施方式,由于UI View的層級高于地圖視圖的層級,如果觸摸事件發(fā)生在UI View的某個(gè)子視圖上,該觸摸事件會(huì)傳遞給UI View,從而執(zhí)行相應(yīng)的UI操作。在這種情況下,無需考慮地圖視圖。
S14:當(dāng)所述觸摸事件發(fā)生在所述第二視圖的不與所述第一視圖重疊的區(qū)域時(shí),由所述第二視圖對所述觸摸事件進(jìn)行響應(yīng)。
對應(yīng)于本公開的示例性實(shí)施方式,在這種情況下,觸摸的區(qū)域不在UI View上,僅地圖視圖接收到觸摸事件,此時(shí),地圖視圖可以響應(yīng)于觸摸事件而執(zhí)行地圖的滑動(dòng)、縮放、點(diǎn)擊等操作。這樣,既可以在地圖上方顯示UI,又可以使得地圖正常操作。
圖4示意性示出了本公開的示例性實(shí)施例中的另一種觸摸事件響應(yīng)處理方法的流程圖。
參考圖4,所述觸摸事件響應(yīng)處理方法可以包括以下步驟:
S21:配置一非全屏顯示的UI View。
S22:配置地圖視圖,設(shè)置所述UI View的層級高于所述地圖視圖的層級。
S23:判斷是否接收到觸摸事件;當(dāng)接收到所述觸摸事件時(shí),進(jìn)入步驟S24;反之,繼續(xù)判斷是否接收到觸摸事件。
S24:判斷所述觸摸事件發(fā)生在UI View區(qū)域;當(dāng)所述觸摸事件發(fā)生在UI View區(qū)域時(shí),進(jìn)入步驟S25;反之,跳轉(zhuǎn)到步驟S26。
S25:所述UI View對所述觸摸事件進(jìn)行響應(yīng)。完成相應(yīng)的UI操作后,繼續(xù)跳回到步驟S23判斷是否接收到下一個(gè)觸摸事件。
S26:所述地圖視圖對所述觸摸事件進(jìn)行響應(yīng)。完成相應(yīng)的UI操作后,繼續(xù)跳回到步驟S23判斷是否接收到下一個(gè)觸摸事件。
本發(fā)明實(shí)施方式的其他內(nèi)容參見上述實(shí)施方式,在此不再贅述。
應(yīng)當(dāng)注意,盡管在附圖中以特定順序描述了本公開中方法的各個(gè)步驟,但是,這并非要求或者暗示必須按照該特定順序來執(zhí)行這些步驟,或是必須執(zhí)行全部所示的步驟才能實(shí)現(xiàn)期望的結(jié)果。附加的或備選的,可以省略某些步驟,將多個(gè)步驟合并為一個(gè)步驟執(zhí)行,以及/或者將一個(gè)步驟分解為多個(gè)步驟執(zhí)行等。
進(jìn)一步的,參考圖5中所示,本示例實(shí)施方式中還提供了一種觸摸事件響應(yīng)處理系統(tǒng)1,所述觸摸事件響應(yīng)處理系統(tǒng)1可以包括配置模塊11、判斷模塊12、第一響應(yīng)模塊13和第二響應(yīng)模塊14。
其中配置模塊11用于配置第一視圖和第二視圖,其中所述第一視圖的層級高于所述第二視圖的層級。
判斷模塊12用于當(dāng)接收到觸摸事件時(shí),判斷所述觸摸事件發(fā)生的位置。
第一響應(yīng)模塊13用于當(dāng)所述觸摸事件發(fā)生在所述第一視圖的區(qū)域時(shí),由所述第一視圖對所述觸摸事件進(jìn)行響應(yīng)。
第二響應(yīng)模塊14用于當(dāng)所述觸摸事件發(fā)生在所述第二視圖的不與所述第一視圖重疊的區(qū)域時(shí),由所述第二視圖對所述觸摸事件進(jìn)行響應(yīng)。
本示例性實(shí)施例中,所述第一視圖為用戶交互視圖,其中所述用戶交互視圖包括一個(gè)或多個(gè)子視圖,所述子視圖為按鈕視圖、文字視圖、圖片視圖中的一種或者多種。
本示例性實(shí)施例中,所述用戶交互視圖的各個(gè)子視圖采用節(jié)點(diǎn)樹的形式管理,所述系統(tǒng)還包括:添加模塊,用于將各個(gè)子視圖添加到相應(yīng)平臺的渲染節(jié)點(diǎn)上。
本示例性實(shí)施例中,所述用戶交互視圖包括采用相應(yīng)平臺的原生語言編寫的一個(gè)或者多個(gè)UI接口。
由于本發(fā)明實(shí)施方式的程序運(yùn)行性能分析裝置的各個(gè)功能模塊與上述方法發(fā)明實(shí)施方式中相同,因此在此不再贅述。
應(yīng)當(dāng)注意,盡管在上文詳細(xì)描述中提及了程序運(yùn)行性能分析裝置的若干模塊或者單元,但是這種劃分并非強(qiáng)制性的。實(shí)際上,根據(jù)本公開的實(shí)施方式,上文描述的兩個(gè)或更多模塊或者單元的特征和功能可以在一個(gè)模塊或者單元中具體化。反之,上文描述的一個(gè)模塊或者單元的特征和功能可以進(jìn)一步劃分為由多個(gè)模塊或者單元來具體化。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員易于理解,這里描述的示例實(shí)施方式可以通過軟件實(shí)現(xiàn),也可以通過軟件結(jié)合必要的硬件的方式來實(shí)現(xiàn)。因此,根據(jù)本公開實(shí)施方式的技術(shù)方案可以以軟件產(chǎn)品的形式體現(xiàn)出來,該軟件產(chǎn)品可以存儲在一個(gè)非易失性存儲介質(zhì)(可以是CD-ROM,U盤,移動(dòng)硬盤等)中或網(wǎng)絡(luò)上,包括若干指令以使得一臺計(jì)算設(shè)備(可以是個(gè)人計(jì)算機(jī)、服務(wù)器、觸控終端、或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行根據(jù)本公開實(shí)施方式的方法。
本領(lǐng)域技術(shù)人員在考慮說明書及實(shí)踐這里公開的發(fā)明后,將容易想到本公開的其它實(shí)施方案。本申請旨在涵蓋本公開的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本公開的一般性原理并包括本公開未公開的本技術(shù)領(lǐng)域中的公知常識或慣用技術(shù)手段。說明書和實(shí)施例僅被視為示例性的,本公開的真正范圍和精神由下面的權(quán)利要求指出。
應(yīng)當(dāng)理解的是,本公開并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本公開的范圍僅由所附的權(quán)利要求來限制。