本發(fā)明涉及數(shù)據(jù)錄入U(xiǎn)I布局應(yīng)用程序,更具體地,涉及一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化方法和系統(tǒng)。
背景技術(shù):
在許多基于iOS系統(tǒng)應(yīng)用中,特別是信息采集和展示的應(yīng)用中,一個(gè)iOS系統(tǒng)界面多個(gè)數(shù)據(jù)錄入?yún)^(qū)域是很常見的用戶交互接口,應(yīng)用于對各種數(shù)據(jù)的輸入和編輯,以及信息的顯示和接收,從而實(shí)現(xiàn)信息的采集和處理,如采集用戶的注冊信息,其數(shù)據(jù)錄入?yún)^(qū)域的數(shù)量與種類眾多,數(shù)據(jù)結(jié)構(gòu)也呈現(xiàn)多樣化。
現(xiàn)有技術(shù)在處理一個(gè)iOS系統(tǒng)用戶界面(UI)多個(gè)數(shù)據(jù)錄入?yún)^(qū)域時(shí),通常是每個(gè)數(shù)據(jù)錄入?yún)^(qū)域?qū)?yīng)用戶界面(UI)的所有輸入類型,在確定一個(gè)數(shù)據(jù)錄入?yún)^(qū)域的輸入類型時(shí),需要遍歷當(dāng)前用戶界面的所有數(shù)據(jù)錄入?yún)^(qū)域?qū)?yīng)的所有數(shù)據(jù)源類型,然后再逐個(gè)進(jìn)行匹配,最終為當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域提供合適的輸入類型,這在一定程度上應(yīng)用的使用會影響移動通信終端的性能,尤其當(dāng)移動通信終端硬件配置較低時(shí),一個(gè)iOS系統(tǒng)用戶界面(UI)存在多個(gè)數(shù)據(jù)錄入?yún)^(qū)域,就容易造成系統(tǒng)響應(yīng)慢和應(yīng)用卡頓的現(xiàn)象。另外,隨著手機(jī)軟件的迭代變更,需不斷滿足對數(shù)據(jù)錄入?yún)^(qū)域變動的要求,現(xiàn)有技術(shù)在iOS系統(tǒng)用戶界面(UI)多個(gè)數(shù)據(jù)錄入?yún)^(qū)域的開發(fā)過程中,一個(gè)用戶界面的所有數(shù)據(jù)錄入?yún)^(qū)域作為一個(gè)整體,每個(gè)數(shù)據(jù)錄入?yún)^(qū)域?qū)?yīng)一個(gè)用戶界面所有數(shù)據(jù)錄入?yún)^(qū)域的輸入類型,導(dǎo)致存在代碼冗余和功能擴(kuò)展性差的問題。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例中提供了一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化的方法和系統(tǒng),以解決現(xiàn)有iOS系統(tǒng)一個(gè)用戶界面(UI)存在多個(gè)數(shù)據(jù)錄入?yún)^(qū)域時(shí),系統(tǒng)響應(yīng)慢和應(yīng)用卡頓的問題,同時(shí)解決iOS系統(tǒng)數(shù)據(jù)錄入U(xiǎn)I布局設(shè)計(jì)中多個(gè)數(shù)據(jù)錄入?yún)^(qū)域開發(fā)的代碼冗余,以及不易擴(kuò)展的問題。
第一方面,本發(fā)明實(shí)施例提供了一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化的方法,包括:
步驟S100:激活一個(gè)UI相對位置的數(shù)據(jù)錄入?yún)^(qū)域;
步驟S200:依據(jù)激活位置信息,獲取所述數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型;
步驟S300:判斷所述數(shù)據(jù)模型是否預(yù)置操作模型;
步驟S400:若所述數(shù)據(jù)模型預(yù)置操作模型,則彈出配置視圖;
步驟S500:獲取所述輸入內(nèi)容;
步驟S600:在所述數(shù)據(jù)錄入?yún)^(qū)域顯示輸入內(nèi)容。
優(yōu)選地,所述步驟S300后還包括:
步驟S301:若所述數(shù)據(jù)模型沒有預(yù)置操作模型時(shí),則彈出鍵盤;其中所述鍵盤指iOS系統(tǒng)標(biāo)準(zhǔn)鍵盤。
優(yōu)選地,所述步驟S400還分解成以下步驟:
步驟S401:若所述數(shù)據(jù)模型預(yù)置操作模型時(shí),進(jìn)一步判斷所述操作模型是否配置輸入視圖;
步驟S402:若所述操作模型配置有輸入視圖時(shí),則彈出供用戶輸入的輸入視圖。
優(yōu)選地,所述步驟S401后還包括:
步驟S403:若所述操作模型沒有配置輸入視圖時(shí),控制界面跳轉(zhuǎn)至輸入界面。
優(yōu)選地,所述數(shù)據(jù)模型具體指每個(gè)數(shù)據(jù)錄入?yún)^(qū)域?qū)?yīng)設(shè)置的輸入類型參數(shù);其中,所述參數(shù)封裝在數(shù)據(jù)模型中。
優(yōu)選地,所述預(yù)置操作模型指將數(shù)據(jù)錄入?yún)^(qū)域與操作模型以一一對應(yīng)的方式進(jìn)行綁定,所述操作模型封裝在數(shù)據(jù)模型中。
優(yōu)選地,所述配置視圖指將供用戶輸入的視圖與數(shù)據(jù)錄入?yún)^(qū)域以一一對應(yīng)的方式進(jìn)行綁定,所述配置視圖封裝在所述操作模型中。
優(yōu)選地,所述操作模型包括iOS系統(tǒng)鍵盤以外的視圖、自定義視圖、控制界面跳轉(zhuǎn)。
第二方面,本發(fā)明實(shí)施例提供了一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化系統(tǒng),包括:
數(shù)據(jù)錄入?yún)^(qū)域激活模塊,用于激活一個(gè)UI相對位置的數(shù)據(jù)錄入?yún)^(qū)域;
數(shù)據(jù)模型獲取模塊,用于依據(jù)激活位置信息,獲取所述數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型;
數(shù)據(jù)模型判斷模塊,用于判斷數(shù)據(jù)模型是否預(yù)置操作模型;
視圖彈出模塊,用于當(dāng)數(shù)據(jù)模型預(yù)置操作模型時(shí),彈出配置視圖;
數(shù)據(jù)獲取模塊,用于獲取所述輸入內(nèi)容;
數(shù)據(jù)顯示模塊,用于在所述數(shù)據(jù)錄入?yún)^(qū)域中顯示輸入的內(nèi)容。
優(yōu)選地,所述系統(tǒng)中數(shù)據(jù)模型判斷模塊還分解成以下模塊:
操作模型判斷模塊,用于當(dāng)所述數(shù)據(jù)模型操作模型時(shí),進(jìn)一步判斷所述操作模型是否配置輸入視圖;
輸入視圖模塊:用于當(dāng)所述操作模型配置有輸入視圖時(shí),彈出供輸入的輸入視圖。
控制界面跳轉(zhuǎn)模塊:用于當(dāng)所述操作模型沒有配置輸入視圖時(shí),控制跳轉(zhuǎn)至輸入界面。
由以上技術(shù)方案可知,本發(fā)明實(shí)施例提供的一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化方法及統(tǒng),通過將用戶界面(UI)的各個(gè)數(shù)據(jù)錄入?yún)^(qū)域操作模型封裝在相應(yīng)的數(shù)據(jù)模型中,將輸入類型與所述數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型進(jìn)行綁定,使一個(gè)iOS系統(tǒng)界面的多個(gè)數(shù)據(jù)錄入?yún)^(qū)域之間相互獨(dú)立,并基于該封裝的信息判斷是否預(yù)置了操作模型,然后匹配與所在數(shù)據(jù)錄入?yún)^(qū)域?qū)?yīng)的配置視圖,一方面可以適應(yīng)多個(gè)數(shù)據(jù)錄入?yún)^(qū)域需求的變化,減少系統(tǒng)匹配次數(shù),達(dá)到快速響應(yīng)輸入請求,尤其在硬件配置較低的情況下提高應(yīng)用使用性能,優(yōu)化iOS系統(tǒng)用戶界面(UI)多個(gè)數(shù)據(jù)錄入?yún)^(qū)域復(fù)雜輸入環(huán)境下的輸入,解決由應(yīng)用引起的手機(jī)卡頓的現(xiàn)象;另一方面解決在iOS系統(tǒng)數(shù)據(jù)錄入U(xiǎn)I布局設(shè)計(jì)中代碼冗余和功能擴(kuò)展性差的問題,當(dāng)數(shù)據(jù)錄入?yún)^(qū)域發(fā)生變化時(shí),只需要修改對應(yīng)的數(shù)據(jù)錄入?yún)^(qū)域參數(shù)即可,當(dāng)有新的數(shù)據(jù)錄入?yún)^(qū)域需求時(shí)只需要添加新的數(shù)據(jù)錄入?yún)^(qū)域配置和對應(yīng)的參數(shù),易于擴(kuò)展和維護(hù),提高開發(fā)效率。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,對于本領(lǐng)域普通技術(shù)人員而言,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實(shí)施例1提供的一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化方法的流程示意圖;
圖2為本發(fā)明實(shí)施例2提供的一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化方法的流程示意圖;
圖3為本發(fā)明實(shí)施例3提供的一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化系統(tǒng)的結(jié)構(gòu)示意圖;
具體實(shí)施方式
為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明中的技術(shù)方案,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都應(yīng)當(dāng)屬于本發(fā)明保護(hù)的范圍。
參見圖1,為本發(fā)明實(shí)施例1提供的一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化方法的流程示意圖,該方法主要包括以下步驟:
步驟S100:激活一個(gè)UI相對位置的數(shù)據(jù)錄入?yún)^(qū)域;
在許多基于iOS系統(tǒng)應(yīng)用中,一個(gè)iOS系統(tǒng)界面存在多個(gè)數(shù)據(jù)錄入?yún)^(qū)域,例如用戶的注冊界面,往往需要注冊姓名、昵稱、郵箱、地址、聯(lián)系方式等信息,然后通過點(diǎn)擊注冊或者提交,這些信息就會被提交到遠(yuǎn)程服務(wù)器,所述數(shù)據(jù)錄入?yún)^(qū)域可以是輸入框。當(dāng)用戶在一個(gè)用戶界面(UI)點(diǎn)擊需要輸入內(nèi)容的數(shù)據(jù)錄入?yún)^(qū)域時(shí),系統(tǒng)激活用戶界面(UI)相對位置的數(shù)據(jù)錄入?yún)^(qū)域,所述數(shù)據(jù)錄入?yún)^(qū)域獲得焦點(diǎn),觸發(fā)編輯模式。
步驟S200:依據(jù)激活位置信息,獲取所述數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型;
激活用戶界面(UI)相對位置的數(shù)據(jù)錄入?yún)^(qū)域時(shí),所在數(shù)據(jù)錄入?yún)^(qū)域即成為當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域,系統(tǒng)獲取當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域所在的位置信息,并基于該位置信息,獲取當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型,及時(shí)響應(yīng)當(dāng)前數(shù)據(jù)輸入?yún)^(qū)域的輸入請求。
由于iOS系統(tǒng)應(yīng)用開發(fā)是遵循MVC模式設(shè)計(jì),iOS中多數(shù)數(shù)據(jù)源視圖控件(View)都有一個(gè)數(shù)據(jù)源(dataSource)屬性用于和控制器(Controller)交互,而數(shù)據(jù)源一般會以數(shù)據(jù)模型(Model)的形式進(jìn)行定義,視圖控件(View)不直接和數(shù)據(jù)模型進(jìn)行交互,而是通過控制器間接讀取數(shù)據(jù)。在激活用戶界面(UI)數(shù)據(jù)錄入?yún)^(qū)域時(shí),系統(tǒng)通過控制器獲取當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域的位置信息,并基于位置信息獲取當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型,所述數(shù)據(jù)模型指每個(gè)數(shù)據(jù)錄入?yún)^(qū)域事先聲明好的輸入來源,所述輸入來源為控制器獲取值提供相應(yīng)的操作屬性。如當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域用于獲取用戶的注冊姓名,則該數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型為普通文本框,通過iOS系統(tǒng)提供的系統(tǒng)鍵盤即可以獲取該數(shù)據(jù)錄入?yún)^(qū)域的值,所述數(shù)據(jù)模型的即可定義為鍵盤。
步驟S300:判斷所述數(shù)據(jù)模型是否預(yù)置操作模型;
在本發(fā)明實(shí)施例1中,所述操作模型(action)是指通過數(shù)據(jù)模型定義數(shù)據(jù)來源的事件響應(yīng),數(shù)據(jù)錄入?yún)^(qū)域在默認(rèn)情況下用iOS系統(tǒng)鍵盤輸入,當(dāng)所在數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型為iOS系統(tǒng)鍵盤以外的數(shù)據(jù)內(nèi)容時(shí),對相應(yīng)的數(shù)據(jù)錄入?yún)^(qū)域預(yù)置操作模型(action),與數(shù)據(jù)錄入?yún)^(qū)域一一對應(yīng)。系統(tǒng)在獲取數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型后,首先默認(rèn)不彈出鍵盤,然后根據(jù)數(shù)據(jù)模型中是否包含操作模型,來提供當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域的響應(yīng)事件,以便判斷應(yīng)該匹配哪種相適應(yīng)的輸入類型。例如,當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域中的數(shù)據(jù)模型為姓名時(shí),數(shù)據(jù)模型中包含有iOS系統(tǒng)鍵盤,則表示所述輸入來源為普通數(shù)據(jù)錄入?yún)^(qū)域,當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型中則沒有預(yù)置操作模型。
通過對數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型預(yù)置操作模型,將輸入類型與所述數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型進(jìn)行綁定,使一個(gè)界面的多個(gè)數(shù)據(jù)錄入?yún)^(qū)域之間相互獨(dú)立,在判斷數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型是否預(yù)置操作模型時(shí),只需與當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域做一次匹配,即可區(qū)分?jǐn)?shù)據(jù)來源,而無需遍歷當(dāng)前用戶界面(UI)所有數(shù)據(jù)錄入?yún)^(qū)域的輸入類型然后再依次匹配。另一方面,對各個(gè)數(shù)據(jù)錄入?yún)^(qū)域預(yù)置操作模型,可以減少代碼冗余,同時(shí)易于維護(hù),例如,當(dāng)現(xiàn)有的數(shù)據(jù)錄入?yún)^(qū)域的類型發(fā)生變化時(shí),只需要修改對應(yīng)數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型,而不需要對當(dāng)前用戶界面(UI)的所有數(shù)據(jù)錄入?yún)^(qū)域進(jìn)行修改;當(dāng)需要在當(dāng)前用戶界面新增一個(gè)數(shù)據(jù)錄入?yún)^(qū)域時(shí),只需要對新增數(shù)據(jù)錄入?yún)^(qū)域添加對應(yīng)的數(shù)據(jù)模型即可;當(dāng)需要在當(dāng)前用戶界面減少一個(gè)數(shù)據(jù)錄入?yún)^(qū)域時(shí),只需要?jiǎng)h除與當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域相對應(yīng)的數(shù)據(jù)模型即可。
步驟S400:若所述數(shù)據(jù)模型預(yù)置有操作模型,則彈出配置視圖;
在本發(fā)明實(shí)施例1中,所述配置視圖是指將iOS系統(tǒng)鍵盤以外的視圖(view)以具體的屬性參數(shù)配置在操作模型中,用于傳遞數(shù)值。
在iOS系統(tǒng)界面輸入時(shí),經(jīng)常要切換系統(tǒng)鍵盤和配置視圖,因此,在本發(fā)明實(shí)施例1中,通過判斷數(shù)據(jù)模型是否預(yù)置操作模型(action),來匹配相適應(yīng)的輸入類型,基于判斷的結(jié)果來確定是否將配置視圖作為第一響應(yīng)。若獲取的當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域數(shù)據(jù)模型中預(yù)置了操作模型(action),則觸發(fā)事件響應(yīng),系統(tǒng)彈出相應(yīng)的配置視圖。例如,當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型為日期時(shí),數(shù)據(jù)錄入?yún)^(qū)域被激活后,系統(tǒng)首先默認(rèn)鍵盤不彈出來,然后判斷數(shù)據(jù)模型是否預(yù)置有操作模型,若日期型數(shù)據(jù)設(shè)置的是普通文本框,則通過iOS系統(tǒng)鍵盤即可獲取輸入內(nèi)容,即表示數(shù)據(jù)模型中沒有預(yù)置操作模型;若與日期型數(shù)據(jù)錄入?yún)^(qū)域綁定的是一個(gè)日期選擇器,則數(shù)據(jù)模型中預(yù)置有操作模型,該操作模型通過傳值的方式,通知系統(tǒng)彈出一個(gè)配置視圖,如彈出一個(gè)可上下滑動的日期選擇器。
步驟S500:獲取所述輸入內(nèi)容;
在本發(fā)明實(shí)施例1中,當(dāng)所述數(shù)據(jù)錄入?yún)^(qū)域被激活觸發(fā)編輯模式,則通過調(diào)用事件響應(yīng)來傳遞和接受數(shù)據(jù)錄入?yún)^(qū)域的輸入內(nèi)容,將獲取的輸入內(nèi)容通過值傳遞的方式存儲數(shù)據(jù)。
步驟S600:在所述數(shù)據(jù)錄入?yún)^(qū)域顯示輸入內(nèi)容。
在輸入結(jié)束時(shí),將存儲的所述輸入內(nèi)容,用數(shù)據(jù)模型保存起來,然后通過對數(shù)據(jù)錄入?yún)^(qū)域賦值的形式將輸入內(nèi)容進(jìn)行顯示,所顯示的值包括通過鍵盤輸入的值,或通過配置視圖選擇和輸入的值。
本發(fā)明實(shí)施例1提供的iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化的方法,將輸入類型與所述數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型進(jìn)行綁定,并對具有特殊數(shù)據(jù)模型的數(shù)據(jù)錄入?yún)^(qū)域配置操作模型,使一個(gè)iOS系統(tǒng)用戶界面的多個(gè)數(shù)據(jù)錄入?yún)^(qū)域之間相互獨(dú)立,通過判斷數(shù)據(jù)模型中是否預(yù)置操作模型來作出相應(yīng)的響應(yīng)。一方面可以滿足一個(gè)用戶界面(UI)多個(gè)數(shù)據(jù)錄入?yún)^(qū)域的需求,減少系統(tǒng)匹配次數(shù),達(dá)到快速響應(yīng)輸入請求,尤其在硬件配置較低的情況下提高應(yīng)用使用性能,優(yōu)化系統(tǒng)用戶界面(UI)多個(gè)數(shù)據(jù)錄入?yún)^(qū)域復(fù)雜輸入環(huán)境下的輸入,解決由應(yīng)用引起的手機(jī)卡頓的現(xiàn)象;另一方面在iOS系統(tǒng)數(shù)據(jù)錄入U(xiǎn)I布局設(shè)計(jì)中多個(gè)數(shù)據(jù)錄入?yún)^(qū)域開發(fā)的代碼冗余和不易擴(kuò)展的問題,當(dāng)數(shù)據(jù)錄入?yún)^(qū)域發(fā)生變化時(shí),只需要修改對應(yīng)的參數(shù)即可,當(dāng)有新的數(shù)據(jù)錄入?yún)^(qū)域需求時(shí)只需要添加新的數(shù)據(jù)錄入?yún)^(qū)域配置和對應(yīng)的參數(shù),減少代碼冗作產(chǎn),也易于擴(kuò)展和維護(hù),提高開發(fā)效率。
本發(fā)明實(shí)施例1一種可選實(shí)施例,在步驟S300后還設(shè)有步驟S301:若所述數(shù)據(jù)模型沒有預(yù)置操作模型時(shí),則彈出鍵盤;其中所述鍵盤指iOS系統(tǒng)標(biāo)準(zhǔn)鍵盤。
若當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型沒有預(yù)置操作模型時(shí),即數(shù)據(jù)錄入?yún)^(qū)域沒有設(shè)置特殊數(shù)據(jù)來源,系統(tǒng)默認(rèn)當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)來源是一個(gè)普通數(shù)據(jù)來源,則彈出iOS系統(tǒng)鍵盤來獲取輸入內(nèi)容,其中,本領(lǐng)域技術(shù)人員可以根據(jù)實(shí)際需要以及iOS系統(tǒng)的升級,采用iOS系統(tǒng)配置的各類系統(tǒng)鍵盤,包括但不限于英文鍵盤(Default)、支持ASCII的默認(rèn)鍵盤(ASCIICapable)沒有符號的英文鍵盤(NamePhonePad)、數(shù)字鍵盤(Decimal)、電子郵件地址鍵盤(EmailAddress)、沒有符號的英文鍵盤(NamePhonePad)、沒有小數(shù)點(diǎn)的數(shù)字鍵盤(NumberPad)、全鍵盤的數(shù)字鍵盤(NumbersAndPunctuation)、電話鍵盤(PhonePad)、網(wǎng)址鍵盤(URL)、推特鍵盤(Twitter)、網(wǎng)頁搜索鍵盤(WebSearch)等,其均應(yīng)落入本發(fā)明的保護(hù)范圍之內(nèi)。
本發(fā)明實(shí)施例1一種可選實(shí)施例,所述數(shù)據(jù)模型具體指每個(gè)數(shù)據(jù)錄入?yún)^(qū)域?qū)?yīng)設(shè)置的屬性參數(shù);其中,所述屬性參數(shù)封裝在數(shù)據(jù)模型中。
本發(fā)明實(shí)施例1一種可選實(shí)施例,所述預(yù)置操作模型指將數(shù)據(jù)錄入?yún)^(qū)域與操作模型以一一對應(yīng)的方式進(jìn)行綁定,所述操作模型封裝在數(shù)據(jù)模型中。
本發(fā)明實(shí)施例1一種可選實(shí)施例,所述配置視圖指將供用戶輸入視圖與數(shù)據(jù)錄入?yún)^(qū)域以一一對應(yīng)的方式進(jìn)行綁定,所述配置視圖封裝在所述操作模型中。
本發(fā)明實(shí)施例1一種可選實(shí)施例,所述操作模型包括iOS系統(tǒng)鍵盤以外的視圖、自定義視圖、控制界面跳轉(zhuǎn)。
參見圖2,為本發(fā)明實(shí)施例2提供的一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化方法,包括本發(fā)明實(shí)施例1所述步驟,以及步驟S400還分解成以下步驟:
步驟S401:若所述數(shù)據(jù)模型預(yù)置操作模型時(shí),進(jìn)一步判斷所述操作模型是否配置輸入視圖;
在本發(fā)明實(shí)施例2中,當(dāng)判定數(shù)據(jù)模型預(yù)置有操作模型時(shí),系統(tǒng)需要彈出相應(yīng)的配置視圖以獲取輸入內(nèi)容,為獲取更快的響應(yīng)速度,以提高系統(tǒng)應(yīng)用性能,在操作模型判斷的基礎(chǔ)上,再增加第二次判斷,即判斷操作模型是否配置輸入視圖,以便使系統(tǒng)作出更具體的響應(yīng)。
步驟S402:若所述操作模型配置有輸入視圖時(shí),則彈出輸入視圖。
所述輸入視圖(inputview)指數(shù)據(jù)模型預(yù)置操作模型時(shí),對操作模型的屬性設(shè)置了自定義視圖(view),在操作模型中配置了自定義輸入視圖時(shí),用于引導(dǎo)用戶進(jìn)行輸入操作。輸入視圖包括但不限于,用于顯示多行滾動文本的文本視圖,特殊布局樣式的軟鍵盤,或者支持觸摸屏輸入的“手寫板”、日歷視圖等。
在本發(fā)明實(shí)施例2中,當(dāng)判定操作模型配置有輸入視圖時(shí),所述輸入視圖(inputview)不會隨著鍵盤出現(xiàn)而出現(xiàn),而是將自定義的輸入視圖作為第一響應(yīng)者,因此當(dāng)操作模型中設(shè)置了輸入視圖時(shí),會自動彈出輸入視圖,比如彈出一個(gè)日期拾取器。
本發(fā)明實(shí)施例2一種可選實(shí)施例,在步驟S401后還包括步驟S403,若所述操作模型沒有配置輸入視圖時(shí),控制界面跳轉(zhuǎn)至輸入界面。
當(dāng)在第一次判斷,即判定數(shù)據(jù)模型中配置有操作模型時(shí),系統(tǒng)默認(rèn)鍵盤不彈出,繼續(xù)判斷操作模型是否配置有輸入視圖,當(dāng)所述操作模型沒有配置輸入視圖時(shí),系統(tǒng)也不彈出視圖(view),而是通過控制器實(shí)現(xiàn)界面跳轉(zhuǎn),跳轉(zhuǎn)到供用戶進(jìn)行輸入操作的另一個(gè)界面,獲取輸入內(nèi)容通過控制器回傳屬性參數(shù)到iOS系統(tǒng)用戶界面,所述屬性參數(shù)在本發(fā)明實(shí)施例2中為當(dāng)前數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型。
參見圖3,為本發(fā)明實(shí)施例3提供的一種iOS數(shù)據(jù)錄入U(xiǎn)I布局優(yōu)化系統(tǒng),包括:數(shù)據(jù)錄入?yún)^(qū)域激活模塊301,用于激活一個(gè)UI相對位置的數(shù)據(jù)錄入?yún)^(qū)域;數(shù)據(jù)模型獲取模塊302,用于依據(jù)激活位置信息,獲取所述數(shù)據(jù)錄入?yún)^(qū)域的數(shù)據(jù)模型;數(shù)據(jù)模型判斷模塊303,用于判斷數(shù)據(jù)模型是否預(yù)置操作模型;視圖彈出模塊304,用于當(dāng)數(shù)據(jù)模型預(yù)置操作模型時(shí),彈出配置視圖;數(shù)據(jù)獲取模塊305,用于獲取所述輸入內(nèi)容;數(shù)據(jù)顯示模塊306,用于在所述數(shù)據(jù)錄入?yún)^(qū)域中顯示輸入的內(nèi)容。
本發(fā)明實(shí)施例3一種可選實(shí)施例中,所述數(shù)據(jù)模型判斷模塊分解成以下模塊:操作模型判斷模塊,用于當(dāng)所述數(shù)據(jù)模型操作模型時(shí),進(jìn)一步判斷所述操作模型是否配置輸入視圖;輸入視圖模塊,用于當(dāng)所述操作模型配置有輸入視圖時(shí),彈出供輸入的輸入視圖;控制界面跳轉(zhuǎn)模塊,用于當(dāng)所述操作模型沒有配置輸入視圖時(shí),控制跳轉(zhuǎn)至輸入界面。
本領(lǐng)域技術(shù)人員在考慮說明書及實(shí)踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實(shí)施方案。本申請旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本技術(shù)領(lǐng)域中的公知常識或慣用技術(shù)手段。說明書和實(shí)施例僅被視為示例性的,本發(fā)明的真正范圍和精神由下面的權(quán)利要求指出。
應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來限制。