基于Android操作系統(tǒng)的鼠標(biāo)指針控制方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及智能終端領(lǐng)域,特別是涉及一種基于Android操作系統(tǒng)的鼠標(biāo)指針控 制方法和裝置。
【背景技術(shù)】
[0002] 鼠標(biāo)指針一般表現(xiàn)為一種視覺(jué)圖形,比如可以是箭頭圖形,用以在圖形界面上標(biāo) 識(shí)出鼠標(biāo)所指示的位置。Android操作系統(tǒng)(一種基于Linux的自由及開(kāi)放源代碼的操作系 統(tǒng))是目前十分流行的操作系統(tǒng),然而Android操作系統(tǒng)本身卻并不支持鼠標(biāo),這使得用戶(hù) 在使用運(yùn)行Android操作系統(tǒng)的終端(比如電視機(jī))時(shí)非常不方便。
【發(fā)明內(nèi)容】
[0003] 基于此,有必要針對(duì)Android操作系統(tǒng)不支持鼠標(biāo)的技術(shù)問(wèn)題,提供一種基于 Android操作系統(tǒng)的鼠標(biāo)指針控制方法和裝置。
[0004] 一種基于Android操作系統(tǒng)的鼠標(biāo)指針控制方法,所述方法包括:
[0005] 在當(dāng)前程序界面中生成鼠標(biāo)指針并初始化;
[0006] 接收指針移動(dòng)指令;
[0007] 根據(jù)所述指針移動(dòng)指令確定所述鼠標(biāo)指針的目標(biāo)位置坐標(biāo);
[0008] 根據(jù)所述目標(biāo)位置坐標(biāo)更新所述鼠標(biāo)指針的位置。
[0009] 一種基于Android操作系統(tǒng)的鼠標(biāo)指針控制裝置,所述裝置包括:
[0010] 鼠標(biāo)指針生成模塊,用于在當(dāng)前程序界面中生成鼠標(biāo)指針并初始化;
[0011]指令接收模塊,用于接收指針移動(dòng)指令;
[0012] 目標(biāo)位置坐標(biāo)確定模塊,用于根據(jù)所述指針移動(dòng)指令確定所述鼠標(biāo)指針的目標(biāo)位 置坐標(biāo);
[0013] 位置更新模塊,用于根據(jù)所述目標(biāo)位置坐標(biāo)更新所述鼠標(biāo)指針的位置。
[0014] 上述基于Android操作系統(tǒng)的鼠標(biāo)指針控制方法和裝置,在當(dāng)前程序界面中生成 鼠標(biāo)指針并初始化后,當(dāng)接收到指針移動(dòng)指令時(shí),根據(jù)該指針移動(dòng)指令確定了鼠標(biāo)指針的 目標(biāo)位置坐標(biāo),從而根據(jù)該目標(biāo)位置坐標(biāo)更新鼠標(biāo)指針的位置。在Android操作系統(tǒng)中實(shí) 現(xiàn)了鼠標(biāo)指針和對(duì)鼠標(biāo)指針的控制,且無(wú)需修改Android操作系統(tǒng)的底層,開(kāi)發(fā)成本低。
【附圖說(shuō)明】
[0015] 圖1為一個(gè)實(shí)施例中基于Android操作系統(tǒng)的鼠標(biāo)指針控制方法的流程示意圖;
[0016] 圖2為一個(gè)實(shí)施例中根據(jù)確定操作指令執(zhí)行操作的步驟的流程示意圖;
[0017] 圖3為一個(gè)具體應(yīng)用場(chǎng)景中在運(yùn)行有Android操作系統(tǒng)的終端上控制鼠標(biāo)指針的 示意圖;
[0018] 圖4為一個(gè)實(shí)施例中根據(jù)指針移動(dòng)指令確定鼠標(biāo)指針的目標(biāo)位置坐標(biāo)的步驟的 流程示意圖;
[0019] 圖5為另一個(gè)實(shí)施例中根據(jù)確定操作指令執(zhí)行操作的步驟的流程示意圖;
[0020] 圖6為另一個(gè)具體應(yīng)用場(chǎng)景中在運(yùn)行有Android操作系統(tǒng)的終端上控制鼠標(biāo)指針 的不意圖;
[0021] 圖7為一個(gè)實(shí)施例中基于Android操作系統(tǒng)的鼠標(biāo)指針控制裝置的結(jié)構(gòu)框圖;
[0022] 圖8為另一個(gè)實(shí)施例中基于Android操作系統(tǒng)的鼠標(biāo)指針控制裝置的結(jié)構(gòu)框圖;
[0023] 圖9為再一個(gè)實(shí)施例中基于Android操作系統(tǒng)的鼠標(biāo)指針控制裝置的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0024] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。
[0025] 如圖1所示,在一個(gè)實(shí)施例中,提供了一種基于Android操作系統(tǒng)的鼠標(biāo)指針控 制方法。本實(shí)施例主要以該方法應(yīng)用于運(yùn)行有Android操作系統(tǒng)的終端中來(lái)舉例說(shuō)明,該 終端可以包括智能手機(jī)、平板電腦、電子書(shū)閱讀器、MP3播放器(Moving Picture Experts Group Audio Layer III,動(dòng)態(tài)影像專(zhuān)家壓縮標(biāo)準(zhǔn)音頻層面3)、MP4 (Moving Picture Experts Group Audio Layer IV,動(dòng)態(tài)影像專(zhuān)家壓縮標(biāo)準(zhǔn)音頻層面3)播放器、電視機(jī)和膝 上型便攜計(jì)算機(jī)等。該基于Android操作系統(tǒng)的鼠標(biāo)指針控制方法包括:
[0026] 步驟102,在當(dāng)前程序界面中生成鼠標(biāo)指針并初始化。
[0027] 鼠標(biāo)指針是用以標(biāo)識(shí)出鼠標(biāo)指示位置的圖形控件,對(duì)鼠標(biāo)指針的初始化包括設(shè)置 鼠標(biāo)指針的尺寸、設(shè)定初始位置和設(shè)置用于顯示鼠標(biāo)指針的圖標(biāo)等。其中鼠標(biāo)指針的尺寸 可根據(jù)需要選擇合適的尺寸,可通過(guò)設(shè)置鼠標(biāo)指針的寬與高實(shí)現(xiàn)。鼠標(biāo)指針的初始位置可 根據(jù)預(yù)設(shè)位置坐標(biāo)設(shè)置,也可以獲取當(dāng)前程序中焦點(diǎn)的位置,從而根據(jù)當(dāng)前焦點(diǎn)的位置設(shè) 置鼠標(biāo)指針的位置。當(dāng)前程序是指應(yīng)用該方法時(shí)終端上正在運(yùn)行的程序,可以是當(dāng)前正在 運(yùn)行且顯示界面的程序。
[0028] 具體地,步驟102包括:獲取當(dāng)前系統(tǒng)窗口管理器(WindowManager),在當(dāng)前系統(tǒng) 窗口管理器上添加圖像顯示控件并初始化。
[0029] 窗口管理器是Android操作系統(tǒng)中的一個(gè)重要服務(wù)(Service),主要用來(lái)管理窗 口的一些狀態(tài)、屬性、視圖增加、刪除、更新、窗口順序、消息收集和處理等,其中窗口用于生 成程序的界面。圖像顯示控件是用于顯示圖像的控件,比如在Android操作系統(tǒng)中可使用 ImageView控件(一種瀏覽圖片控件)實(shí)現(xiàn)鼠標(biāo)指針??赏ㄟ^(guò)設(shè)置ImageView控件里的背景 圖片以顯示鼠標(biāo)指針的圖標(biāo),該圖標(biāo)就是用戶(hù)看到的鼠標(biāo)指針的形狀,該背景圖片的尺寸 就是鼠標(biāo)指針的尺寸,該ImageView控件的位置就是鼠標(biāo)指針的位置。通過(guò)圖像顯示控件 來(lái)生成鼠標(biāo)指針,開(kāi)發(fā)成本低。
[0030] 舉例說(shuō)明,獲取當(dāng)前系統(tǒng)窗口管理器,在當(dāng)前系統(tǒng)窗口管理器上添加圖像顯示控 件并初始化的步驟可通過(guò)以下代碼實(shí)現(xiàn),其中以"http://"開(kāi)頭的段落表示對(duì)該段落以下代碼的 注釋。
[0031] "http://獲取系統(tǒng)窗口管理器
[0032] WindowManager mffindowManager mffindowManager=(WindowManager)mContext. getApplicationContext(). getSystemService(Context. WIND0ff_SERVICE);
[0033] //初始化控件
[0034] ImageView mCoverIv=new ImageView (mContext);
[0035] //指定鼠標(biāo)寬尚等屬性
[0036] WindowManager. LayoutParams mParams=new WindowManager. LayoutParams(12 0, IOOj WindowManager. LayoutParams. TYPE_T0AST, WindowManager. LayoutParams. FLAG_ ALT_FOCUSABLE_m,
[0037] PixelFormat. TRANSLUCENT);
[0038] mParams. gravity=Gravity. LEFT | Gravity. TOP;
[0039] //設(shè)置鼠標(biāo)指針的圖片
[0040] mCoverlv. setBackgroundResource(R. drawable. tcl_mouse_ani);
[0041] //將鼠標(biāo)指針添加到當(dāng)前系統(tǒng)窗口管理器
[0042] mWindowManager. addView (mCoverlv, mParams) ;
[0043] 步驟104,接收指針移動(dòng)指令。
[0044] 指針移動(dòng)指令是控制鼠標(biāo)指針移動(dòng)的指令??赏ㄟ^(guò)遙控器控制終端上鼠標(biāo)指針的 移動(dòng)。遙控器可檢測(cè)按鍵事件,并將檢測(cè)到的按鍵事件發(fā)送給終端,終端收到按鍵事件后觸 發(fā)指針移動(dòng)指令;或者遙控器檢測(cè)到按鍵事件后觸發(fā)指針移動(dòng)指令,將指針移動(dòng)指令發(fā)送 給終端,終端接收遙控器發(fā)送的指針移動(dòng)指令。
[0045] 在一個(gè)實(shí)施例中,移動(dòng)指令包括向上移動(dòng)指令、向下移動(dòng)指令、向左移動(dòng)指令和向 右移動(dòng)指令。本實(shí)施例中,通過(guò)4個(gè)按鍵就可以實(shí)現(xiàn)控制鼠標(biāo)指針在終端屏幕上顯示位置 的移動(dòng),節(jié)省按鍵;而且若終端為電視機(jī),由于一般電視機(jī)的遙控機(jī)都具備至少4個(gè)方向 鍵,可在現(xiàn)有遙控器的基礎(chǔ)上就能實(shí)現(xiàn)對(duì)鼠標(biāo)指針的控制,實(shí)現(xiàn)成本比較低。
[0046] 步驟106,根據(jù)指針移動(dòng)指令確定鼠標(biāo)指針的目標(biāo)位置坐標(biāo)。
[0047] 目標(biāo)位置坐標(biāo)表示要求鼠標(biāo)指針到達(dá)的位置的坐標(biāo),終端可在接收到指針移動(dòng)指 令后獲取鼠標(biāo)指針當(dāng)前所在位置的坐標(biāo),從而在鼠標(biāo)指針當(dāng)前所在位置的坐標(biāo)基礎(chǔ)上增加 或減少預(yù)設(shè)值得到鼠標(biāo)指針的目標(biāo)位置坐標(biāo)。
[0048] 步驟108,根據(jù)目標(biāo)位置坐標(biāo)更新鼠標(biāo)指針的位置。
[0049] 終端根據(jù)目標(biāo)位置坐標(biāo)可更新鼠標(biāo)指針的位置,比如當(dāng)通過(guò)圖像顯示控件實(shí)現(xiàn)鼠 標(biāo)指針時(shí),可根據(jù)該目標(biāo)位置坐標(biāo)改變?cè)搱D像顯示控件的位置,并刷新當(dāng)前程序界面,便實(shí) 現(xiàn)了鼠標(biāo)指針的移動(dòng)。
[0050] 舉例說(shuō)明,確定鼠標(biāo)指針的目標(biāo)位置坐標(biāo)和根據(jù)目標(biāo)位置坐標(biāo)更新鼠標(biāo)指針的位 置的步驟可通過(guò)以下代碼實(shí)現(xiàn):
[0051] "http://改變鼠標(biāo)指針的位置坐標(biāo),X表示鼠標(biāo)指針的橫坐標(biāo),y表示鼠標(biāo)指針的縱坐 標(biāo)。
[0052] mParams. x=x;
[0053] mParams. y=y;
[0054] //刷新程序界面
[0055] mWindowManager. updateViewLayout (mCoverlv, mParams)