本發(fā)明涉及互聯(lián)網(wǎng)應用技術領域,特別涉及一種視圖界面移動的方法及裝置。
背景技術:
隨著互聯(lián)網(wǎng)技術的快速發(fā)展,智能終端(如智能手機、平板電腦、智能手表等)已經(jīng)成為人們工作學習不可或缺的工具,通常在智能終端上通過虛擬鍵盤進行文字、字符等的輸入。然而,在智能終端的觸屏上,經(jīng)常會遇到虛擬鍵盤面積過大,導致過多地覆蓋背景,影響操作可視性的問題。
技術實現(xiàn)要素:
本發(fā)明提供一種視圖界面移動的方法及裝置,用以實現(xiàn)靈活地對視圖界面進行移動的目的。
本發(fā)明提供一種視圖界面移動的方法,包括:
接收彈出虛擬鍵盤的觸發(fā)事件;
判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度;
在虛擬鍵盤的高度高于當前界面中輸入框的高度時,將當前界面向上移動;
在屏幕的下半部分顯示虛擬鍵盤。
在本發(fā)明一實施例中,所述將當前界面向上移動,包括:
根據(jù)虛擬鍵盤的高度與當前界面中輸入框的高度的高度差,增加所述當前界面的高度。
在本發(fā)明一實施例中,所述輸入框為光標所在的輸入框。
在本發(fā)明一實施例中,所述方法還包括:
監(jiān)測光標移動的事件;
根據(jù)光標移動后所在的輸入框,重置所述輸入框;
再次判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度。
在本發(fā)明一實施例中,所述觸發(fā)事件包括下列任意之一:
點擊輸入框的觸發(fā)事件;
跳轉到當前界面并識別出當前界面有輸入框的觸發(fā)事件。
本發(fā)明還提供一種視圖界面移動的裝置,包括:
接收模塊,用于接收彈出虛擬鍵盤的觸發(fā)事件;
第一判斷模塊,用于判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度;
移動模塊,用于在虛擬鍵盤的高度高于當前界面中輸入框的高度時,將當前界面向上移動;
顯示模塊,用于在屏幕的下半部分顯示虛擬鍵盤。
在本發(fā)明一實施例中,所述移動模塊還用于:
根據(jù)虛擬鍵盤的高度與當前界面中輸入框的高度的高度差,增加所述當前界面的高度。
在本發(fā)明一實施例中,所述輸入框為光標所在的輸入框。
在本發(fā)明一實施例中,所述裝置還包括:
監(jiān)測模塊,用于監(jiān)測光標移動的事件;
重置模塊,用于根據(jù)光標移動后所在的輸入框,重置所述輸入框;
第二判斷模塊,用于再次判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度。
在本發(fā)明一實施例中,所述觸發(fā)事件包括下列任意之一:
點擊輸入框的觸發(fā)事件;
跳轉到當前界面并識別出當前界面有輸入框的觸發(fā)事件。
在本發(fā)明實施例中,接收彈出虛擬鍵盤的觸發(fā)事件;判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度;在虛擬鍵盤的高度高于當前界面中輸入框的高度時,將當前界面向上移動;在屏幕的下半部分顯示虛擬鍵盤。由此可見,本發(fā)明實施例能夠靈活地對視圖界面進行移動,從而實現(xiàn)虛擬鍵盤不遮擋當前輸入界面的目的。
本發(fā)明的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發(fā)明而了解。本發(fā)明的目的和其他優(yōu)點可通過在所寫的說明書、權利要求書、以及附圖中所特別指出的結構來實現(xiàn)和獲得。
下面通過附圖和實施例,對本發(fā)明的技術方案做進一步的詳細描述。
附圖說明
附圖用來提供對本發(fā)明的進一步理解,并且構成說明書的一部分,與本發(fā)明的實施例一起用于解釋本發(fā)明,并不構成對本發(fā)明的限制。在附圖中:
圖1所示為本發(fā)明一實施例中視圖界面移動的方法的流程圖;
圖2所示為本發(fā)明另一實施例中視圖界面移動的方法的流程圖;
圖3所示為本發(fā)明一實施例中視圖界面移動的裝置的結構示意圖;以及
圖4所示為本發(fā)明另一實施例中視圖界面移動的裝置的結構示意圖。
具體實施方式
以下結合附圖對本發(fā)明的優(yōu)選實施例進行說明,應當理解,此處所描述的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。
如圖1所示為本發(fā)明一實施例中視圖界面移動的方法的流程圖,該方法可以包括以下步驟S11-S14。
步驟S11,接收彈出虛擬鍵盤的觸發(fā)事件。
在該步驟中,觸發(fā)事件可以是點擊輸入框的觸發(fā)事件,也可以是跳轉到當前界面并識別出當前界面有輸入框的觸發(fā)事件等等,本發(fā)明不限于此。
步驟S12,判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度,若是,則繼續(xù)執(zhí)行步驟S13。
步驟S13,將當前界面向上移動。
在該步驟中,將當前界面向上移動可以是根據(jù)虛擬鍵盤的高度與當前界面中輸入框的高度的高度差,增加當前界面的高度。
步驟S14,在屏幕的下半部分顯示虛擬鍵盤。
在本發(fā)明實施例中,接收彈出虛擬鍵盤的觸發(fā)事件;判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度;在虛擬鍵盤的高度高于當前界面中輸入框的高度時,將當前界面向上移動;在屏幕的下半部分顯示虛擬鍵盤。由此可見,本發(fā)明實施例能夠靈活地對視圖界面進行移動,從而實現(xiàn)虛擬鍵盤不遮擋當前輸入界面的目的。
在本發(fā)明的可選實施例中,輸入框可以為光標所在的輸入框,此時在上文步驟S14在屏幕的下半部分顯示虛擬鍵盤之后,還可以包括以下步驟A1-A3:
步驟A1,監(jiān)測光標移動的事件;
步驟A2,根據(jù)光標移動后所在的輸入框,重置所述輸入框;
步驟A3,再次判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度。
下面通過一具體實施例來詳細介紹本發(fā)明的視圖界面移動的方法的實現(xiàn)過程。如圖2所示為本發(fā)明另一實施例中視圖界面移動的方法的流程圖,該方法可以包括以下步驟S21-S24。
步驟S21,接收彈出虛擬鍵盤的觸發(fā)事件。
在該步驟中,可以設置一個屬性,這個屬性決定是否需要向上彈出視圖,具體代碼為:@property(nonatomic,strong)BOOL*isUpward。
并且,再設置一個方法,里面存兩個參數(shù),一個參數(shù)是當前要上彈哪個View,另一個參數(shù)是上彈的高度,具體代碼如下:
(void)upView:(UIView*)view upHeight:(CGFloat)height
步驟S22,判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度,若是,則繼續(xù)執(zhí)行步驟S23;若否,則繼續(xù)執(zhí)行步驟S24。
步驟S23,根據(jù)虛擬鍵盤的高度與當前界面中輸入框的高度的高度差,增加當前界面的高度。
步驟S24,在屏幕的下半部分顯示虛擬鍵盤。
本發(fā)明實施例能夠靈活地對視圖界面進行移動,從而實現(xiàn)虛擬鍵盤不遮擋當前輸入界面的目的。
需要說明的是,在實際應用中,上述所有可選實施方式可以采用結合的方式任意組合,形成本發(fā)明的可選實施例,在此不再一一贅述。
對應于上述實施例中的視圖界面移動的方法,本發(fā)明還提供一種視圖界面移動的裝置。如圖3所示為本發(fā)明一實施例中視圖界面移動的裝置的結構示意圖,包括:
接收模塊31,用于接收彈出虛擬鍵盤的觸發(fā)事件;
第一判斷模塊32,用于判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度;
移動模塊33,用于在虛擬鍵盤的高度高于當前界面中輸入框的高度時,將當前界面向上移動;
顯示模塊34,用于在屏幕的下半部分顯示虛擬鍵盤。
在本發(fā)明一實施例中,所述移動模塊33,還用于根據(jù)虛擬鍵盤的高度與當前界面中輸入框的高度的高度差,增加所述當前界面的高度。
在本發(fā)明一實施例中,所述輸入框為光標所在的輸入框。
在本發(fā)明一實施例中,如圖4所示,上文圖3展示的裝置還可以包括:
監(jiān)測模塊41,用于監(jiān)測光標移動的事件;
重置模塊42,用于根據(jù)光標移動后所在的輸入框,重置所述輸入框;
第二判斷模塊43,用于再次判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度。
在本發(fā)明一實施例中,所述觸發(fā)事件包括下列任意之一:
點擊輸入框的觸發(fā)事件;
跳轉到當前界面并識別出當前界面有輸入框的觸發(fā)事件。
本發(fā)明實施例的上述裝置:接收彈出虛擬鍵盤的觸發(fā)事件;判斷虛擬鍵盤的高度是否高于當前界面中輸入框的高度;在虛擬鍵盤的高度高于當前界面中輸入框的高度時,將當前界面向上移動;在屏幕的下半部分顯示虛擬鍵盤。由此可見,本發(fā)明實施例能夠靈活地對視圖界面進行移動,從而實現(xiàn)虛擬鍵盤不遮擋當前輸入界面的目的。
本領域內的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器和光學存儲器等)上實施的計算機程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產(chǎn)品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合??商峁┻@些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數(shù)據(jù)處理設備的處理器以產(chǎn)生一個機器,使得通過計算機或其他可編程數(shù)據(jù)處理設備的處理器執(zhí)行的指令產(chǎn)生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些計算機程序指令也可存儲在能引導計算機或其他可編程數(shù)據(jù)處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些計算機程序指令也可裝載到計算機或其他可編程數(shù)據(jù)處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產(chǎn)生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。