基于觸摸屏的數字輸入編輯組件、系統和方法
【專利摘要】本發明公開了基于觸摸屏的數字輸入編輯組件、系統和方法,提高數字輸入和數字編輯的效率。其技術方案為:本發明在輪盤上及輪盤間來回滑動實現連續的數字輸入,通過拖動數字生成數字和消除數字,通過拖動初始零輸入整數部分為零的小數,通過拖動小數點改變數階,通過拖動數字清零,通過單擊改變數的正負,通過單擊數字加輪盤輸入實現快速編輯,通過數階表示符直觀表現數字的數階大小,通過不占用數字空間的三角符號代替逗號來劃分數階。
【專利說明】基于觸摸屏的數字輸入編輯組件、系統和方法
【技術領域】
[0001]本發明涉及基于觸摸屏的數字輸入和編輯的應用組件、系統和方法,尤其涉及結合了點擊和滑動兩種操作方式并在特有的用戶界面上實現高效的數字輸入和編輯的組件、系統和方法。
【背景技術】
[0002]電子設備上現有的數字輸入界面通常是一個數字鍵盤(實體或者虛擬),在數字鍵盤上只能通過點擊數字按鈕來進行數字輸入,在對數字進行編輯時也是通過刪除按鈕來實現數字的修改。
[0003]對于這種數字輸入方式,其存在如下的缺點:
[0004]1、數字的輸入只能通過點擊按鈕來進行,無法進行連續性的數字輸入,每輸入一個數字都需要點擊一次,輸入效率低;
[0005]2、無法直接編輯,一旦輸入中出錯,只能刪除錯誤的數字后重新輸入或者清零后重新輸入,或者是其他一些不太直觀有效的數字編輯操作,這些都大大影響了人們數字輸入編輯的效率。
[0006]隨著觸摸式電子設備的普及,需要一種新的觸摸式數字輸入法,能夠有效利用觸摸屏的特點,提高數字輸入效率,提供直觀有效的編輯方式并使得操作更加符合人類思維行為習慣。
【發明內容】
[0007]本發明的目的在于解決上述問題,提供了一種基于觸摸屏的數字輸入編輯組件、系統和方法,應用在計算器、數字鍵盤等各個數字輸入領域,提高數字輸入和數字編輯的效率,使數字輸入和編輯操作更加符合人的思維行動習慣,而且可以提供直觀的數階表示,從而節省有限的橫向數字表示空間。
[0008]本發明的技術方案為:本發明揭示了一種基于觸摸屏的數字輸入編輯組件,包括:
[0009]數字輸出單元,用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字,且數字顯示區域提供對數字的編輯操作;
[0010]數字輸入單元,用于在觸摸屏的數字響應區域中顯示O?9的數字以供用戶進行按鍵式和滑動式的操作;
[0011]功能輸入單元,用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作。
[0012]根據本發明的基于觸摸屏的數字輸入編輯組件的一實施例,所述組件還包括:
[0013]數階顯示單元,用于在觸摸屏的數階顯示區域中表示數字顯示區域中的數字的數階,其中數階顯示區域位于數字顯示區域的正上方或者正下方并通過一分隔符號組來劃分對應的數字,在數階顯示區域的最前方為一主提示符,以顯示當前數字的數階大小。[0014]根據本發明的基于觸摸屏的數字輸入編輯組件的一實施例,O?9的這10個數字在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列,便于數字輸入的滑動式操作。
[0015]根據本發明的基于觸摸屏的數字輸入編輯組件的一實施例,觸摸屏的功能響應區域是按鈕響應區域,按鈕響應區域分為角按鈕響應區和中央按鈕響應區,其中角按鈕響應區位于輪盤狀的數字響應區域的外側的四個角上,中央按鈕響應區位于輪盤狀的數字響應區域的內部區域。
[0016]根據本發明的基于觸摸屏的數字輸入編輯組件的一實施例,功能輸入單元是運算符號輸入單元,其中在角按鈕響應區上分別設置加、減、乘、除的運算符號,在中央按鈕響應區上設置等號、小數點的運算符號,以供用戶按鍵式操作。
[0017]本發明揭示了一種基于觸摸屏的數字輸入編輯方法,是基于觸摸屏的數字輸入編輯組件上的輸入編輯方法,其中基于觸摸屏的數字輸入編輯組件包括數字輸出單元、數字輸入單元和功能輸入單元,數字輸出單元用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字且提供對數字的編輯操作,數字輸入單元用于在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列顯示O?9的數字以供用戶進行按鍵式和滑動式的操作,功能輸入單元用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作,方法包括:
[0018]對用戶的手勢進行識別,若是單擊手勢則直接進行單個數字的輸入,若是滑動手勢則進入后續的步驟;
[0019]對用戶在觸摸屏上的滑動軌跡進行采樣,以獲得當前采樣點的坐標位置,并保存上一個采樣點的坐標位置;
[0020]根據采樣到的坐標位置獲得用戶當前輸入位置所在區域,是位于背景區域、數字響應區域或是功能響應區域;
[0021]基于上一個采樣點和當前采樣點的坐標位置判斷用戶軌跡的方式:若上一個采樣點在數字響應區域外且當前采樣點在數字響應區域內,則判斷為用戶從數字響應區域外滑動進入數字響應區域內,若上一個采樣點和當前采樣點均在數字響應區域內,則判斷為用戶在數字響應區域內滑動,若上一個采樣點在數字響應區域內且當前采樣點在數字響應區域外,則判斷為用戶從數字響應區域內滑動到數字響應區域外;
[0022]基于用戶軌跡的方式判斷是否觸發一次數字輸入,且輸入的值是由預設的當前輸入位置所在區域和數值的對應關系確定。
[0023]根據本發明的基于觸摸屏的數字輸入編輯方法的一實施例,在觸發一次數字輸入的判斷中,若從數字響應區域外滑動進入數字響應區域內則觸發一次數字輸入,若在數字響應區域內滑動且用戶輸入的初始位置在數字響應區域內則觸發一次數字輸入。
[0024]根據本發明的基于觸摸屏的數字輸入編輯方法的一實施例,觸摸屏的功能響應區域是按鈕響應區域,按鈕響應區域分為角按鈕響應區和中央按鈕響應區,其中角按鈕響應區位于輪盤狀的數字響應區域的外側的四個角上,中央按鈕響應區位于輪盤狀的數字響應區域的內部區域,功能輸入單元是運算符號輸入單元,其中在角按鈕響應區上分別設置加、減、乘、除的運算符號,在中央按鈕響應區上設置等號、小數點的運算符號,按鈕響應區域不接受滑動手勢只接受單擊手勢的操作。
[0025]本發明揭示了一種基于觸摸屏的數字輸入編輯系統,是基于觸摸屏的數字輸入編輯組件上的輸入編輯系統,其中基于觸摸屏的數字輸入編輯組件包括數字輸出單元、數字輸入單元和功能輸入單元,數字輸出單元用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字且提供對數字的編輯操作,數字輸入單元用于在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列顯示O?9的數字以供用戶進行按鍵式和滑動式的操作,功能輸入單元用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作,系統包括:
[0026]手勢識別裝置,對用戶的手勢進行識別,若是單擊手勢則直接進行單個數字的輸入,若是滑動手勢則進入后續的裝置進行處理;
[0027]采樣位置獲取裝置,對用戶在觸摸屏上的滑動軌跡進行采樣,以獲得當前采樣點的坐標位置,并保存上一個采樣點的坐標位置;
[0028]區域判斷裝置,根據采樣到的坐標位置獲得用戶當前輸入位置所在區域,是位于背景區域、數字響應區域或是功能響應區域;
[0029]軌跡方式判斷裝置,基于上一個采樣點和當前采樣點的坐標位置判斷用戶軌跡的方式:若上一個采樣點在數字響應區域外且當前采樣點在數字響應區域內,則判斷為用戶從數字響應區域外滑動進入數字響應區域內,若上一個采樣點和當前采樣點均在數字響應區域內,則判斷為用戶在數字響應區域內滑動,若上一個采樣點在數字響應區域內且當前采樣點在數字響應區域外,則判斷為用戶從數字響應區域內滑動到數字響應區域外;
[0030]輸入觸發裝置,基于用戶軌跡的方式判斷是否觸發一次數字輸入,且輸入的值是由預設的當前輸入位置所在區域和數值的對應關系確定。
[0031]根據本發明的基于觸摸屏的數字輸入編輯系統的一實施例,在輸入觸發裝置的觸發一次數字輸入的判斷中,若從數字響應區域外滑動進入數字響應區域內則觸發一次數字輸入,若在數字響應區域內滑動且用戶輸入的初始位置在數字響應區域內則觸發一次數字輸入。
[0032]根據本發明的基于觸摸屏的數字輸入編輯系統的一實施例,觸摸屏的功能響應區域是按鈕響應區域,按鈕響應區域分為角按鈕響應區和中央按鈕響應區,其中角按鈕響應區位于輪盤狀的數字響應區域的外側的四個角上,中央按鈕響應區位于輪盤狀的數字響應區域的內部區域,功能輸入單元是運算符號輸入單元,其中在角按鈕響應區上分別設置加、減、乘、除的運算符號,在中央按鈕響應區上設置等號、小數點的運算符號,按鈕響應區域不接受滑動手勢只接受單擊手勢的操作。
[0033]本發明另外揭示了 一種基于觸摸屏的數字輸入編輯方法,是基于觸摸屏的數字輸入編輯組件上的輸入編輯方法,其中基于觸摸屏的數字輸入編輯組件包括數字輸出單元、數字輸入單元和功能輸入單元,數字輸出單元用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字且提供對數字的編輯操作,數字輸入單元用于在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列顯示O?9的數字以供用戶進行按鍵式和滑動式的操作,功能輸入單元用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作,方法包括:
[0034]檢測用戶在數字顯示區域中的手勢的類型,當手勢是滑動類型時進行后續的步驟;
[0035]檢測用戶輸入位置在數字顯示區域中的子區域,當輸入位置是位于數字和小數點構成的子區域內時,進行后續的步驟;
[0036]檢測當前數是為零,若當前數為非零時進行后續的步驟;
[0037]檢測用戶處理的對象類型,當所處理的是數字時進行數字拖動處理:生成數字浮動組,若向左滑動則進行生成處理,若向右滑動則進行消除處理;
[0038]歸位處理,使得數字的位置和對象槽的位置一致。
[0039]根據本發明的基于觸摸屏的數字輸入編輯方法的一實施例,當手勢是單擊類型時,進行后續的步驟:
[0040]檢查用戶輸入位置在數字顯示區域中的子區域,當輸入位置是位于數字和小數點構成的子區域內時進行后續的步驟;
[0041]判斷對象槽狀態,當對象槽為普通狀態時修改成編輯狀態,當對象槽為編輯狀態時基于輸入位置是否位于編輯焦點對象之上進行操作:當輸入位置位于編輯焦點對象之上時取消編輯狀態,當輸入位置位于編輯焦點對象之外時改變編輯焦點。
[0042]根據本發明的基于觸摸屏的數字輸入編輯方法的一實施例,當單擊操作中輸入位置位于緊挨數字和小數點構成的子區域的左邊的一個空對象槽或者帶有負號的對象槽時,若當前數為負值則消去負號,若當前數為正值則生成負號。
[0043]根據本發明的基于觸摸屏的數字輸入編輯方法的一實施例,在滑動操作中當輸入位置位于數字和小數點構成的子區域之外時,進行后續的步驟:
[0044]若輸入位置位于緊挨數字和小數點構成的子區域的左邊的一個空對象槽或者有負號的對象槽時,進行后續的步驟,否則回到檢測用戶輸入位置在數字顯示區域中的子區域的步驟;
[0045]檢測滑動方向是向左滑動還是向右滑動,若向左滑動則回到檢測用戶輸入位置在數字顯示區域中的子區域的步驟,若向右滑動則進行清零處理。
[0046]根據本發明的基于觸摸屏的數字輸入編輯方法的一實施例,當當前數為零時進行初始零拖動處理的步驟如下:
[0047]生成零浮動子串;
[0048]當前的零越過左邊對象槽時在零的右邊生成小數點;
[0049]組成零點浮動子串;
[0050]檢測滑動方向是向左滑動或是向右滑動,若向左滑動則做生成處理,若向右滑動則零點浮動子串變為零浮動子串后進行消除處理。
[0051]根據本發明的基于觸摸屏的數字輸入編輯方法的一實施例,當所處理的是小數點時進行小數點拖動處理的步驟如下:
[0052]檢測是向左滑動或是向右滑動;
[0053]在向左滑動的情況下,判斷小數點左邊是否有數字對象存在,若有數字對象存在則在小數點跨越左邊對象的對象槽之時進行置換處理,若無數字對象存在則在小數點跨越左邊對象的對象槽之時在小數點右邊生成零;
[0054]在向右滑動的情況下,判斷小數點右邊是否有數字對象存在,若有數字對象存在則在小數點跨越右邊對象的對象槽之時進行置換處理。
[0055]根據本發明的基于觸摸屏的數字輸入編輯方法的一實施例,在歸位處理之后進行規格化處理,對以下五種情況分別進行處理:
[0056]沒有小數點的情況下,最左邊有若干個零,則全部清除,保證最左邊的數字對象不為零;
[0057]如果最左邊時小數點,則在小數點左邊的對象槽中生成一個零;[0058]如果數字槽組中只有一個負號,則將數字槽組恢復為初始狀態;
[0059]如果數字槽組中只有一連串0,則將數字槽組恢復為初始狀態;
[0060]有小數點的情況下,除非其整數部分只有一個O或一連串0,否則其整數部分遵循:1個O的情況下不做處理,一連串O的情況需要消除最左邊的所有0,只保留最右邊的I個O。
[0061 ] 本發明還揭示了 一種基于觸摸屏的數字輸入編輯方法,是基于觸摸屏的數字輸入編輯組件上的輸入編輯方法,其中基于觸摸屏的數字輸入編輯組件包括數字輸出單元、數字輸入單元和功能輸入單元,數字輸出單元用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字且提供對數字的編輯操作,數字輸入單元用于在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列顯示O?9的數字以供用戶進行按鍵式和滑動式的操作,功能輸入單元用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作,方法包括:
[0062]檢查用戶手勢類型,當手勢為滑動操作時進入后續的步驟;
[0063]檢測當前幀用戶輸入位置,保存上一幀用戶輸入位置,根據上一幀用戶輸入位置和當前幀用戶輸入位置的對比結果判斷滑動手勢的類型,當滑動是從數字響應區域之外滑動到數字響應區域內時進入后續的步驟;
[0064]判斷數字顯示區域內的對象槽是否處于編輯狀態,若處于編輯狀態則進行修改處理,若位于非編輯狀態則進行輸入處理。
[0065]根據本發明的基于觸摸屏的數字輸入編輯方法的一實施例,當手勢為單擊操作時,進行下面的步驟:
[0066]判斷單擊位置所在區域,若為功能響應區域則執行相應的功能,若為數字響應區域則進入后續的步驟;
[0067]判斷數字顯示區域內的對象槽是否處于編輯狀態,若處于編輯狀態則進行修改處理,若位于非編輯狀態則進行輸入處理。
[0068]本發明對比現有技術有如下的有益效果:本發明通過在輪盤狀的數字響應區域以及輪盤間來回滑動來實現連續的數字輸入,提高了數字輸入的效率。本發明通過直接拖動數字來生成數字,實現了數字輸入效率、數字編輯效率的提高,且使得數字輸入和編輯操作更加符合人的思維行動習慣。本發明通過拖動數字來消除數字,提高了數字編輯的效率,并使得數字輸入和編輯操作更加符合人的思維行動習慣。本發明通過拖動初始零輸入整數部分為零的小數,提高了數字輸入的效率,并使得數字輸入和編輯操作更加符合人的思維行動習慣。本發明通過拖動小數點改變數階,提高了數字編輯的效率。本發明通過單擊改變數的正負,使得數字輸入和編輯操作更加符合人的思維行動習慣。本發明通過單擊數字結合輪盤輸入實現快速編輯,提高數字編輯的效率。本發明通過數階表示符直觀表現數字的數階大小。本發明通過不占用數字空間的三角符號代替逗號來劃分數階,節省了有限的橫向數字表示空間。總的來說,本發明的優勢體現在:I)通過將點擊與滑動兩種操作方式以及特有的用戶界面(本發明中稱為G-Panel)進行有機的結合,實現更加高效的數字輸入;2)輪盤式的數字輸入使得在輸入帶有連續性數字時(比如35210987),可以大大提高效率,只要三劃就能完成,而傳統的方法需要點擊8次才能完成輸入,這種優勢在數字越多時越明顯;3)特有的數字顯示區域允許用戶對數字進行直觀有效的編輯,從而大大提高數字的輸入及編輯效率;4)特有的數字顯示區域的特點使得在輸入帶有重復性數字時,可以大大提高效率,比如輸入1000000,結合輪盤式輸入,只要兩劃就能完成輸入,而傳統方法需要點擊8次才能完成,這種優勢尤其在數字越多時越明顯。通過本發明的方案,用戶可以大大提高數字輸入的效率,任何數字輸入的領域,比如計算器、計算機鍵盤小鍵盤、手機撥號盤、虛擬的各類數字輸入鍵盤燈都可以適用,本發明在金融、娛樂、通訊等各個領域的普及能夠使人們的生活更方便、更快捷。
【專利附圖】
【附圖說明】
[0069]圖1示出了本發明的基于觸摸屏的數字輸入編輯組件的第一實施例的原理圖。
[0070]圖2示出了本發明的數字輸入編輯組件的第一實施例在觸摸屏上的用戶界面的示意圖。
[0071]圖3示出了本發明的基于觸摸屏的數字輸入編輯組件的第二實施例的原理圖。
[0072]圖4示出了本發明的數字輸入編輯組件的第二實施例在觸摸屏上的用戶界面的示意圖。
[0073]圖5示出了數字輸入編輯組件在觸摸屏上的用戶界面的另一示例的示意圖。
[0074]圖6示出了本發明的基于觸摸屏的數字輸入編輯方法的較佳實施例的流程圖。
[0075]圖7示出了本發明的基于觸摸屏的數字輸入編輯系統的較佳實施例的原理圖。
[0076]圖8示出了本發明的基于觸摸屏的數字輸入編輯方法的較佳實施例的流程圖。
[0077]圖9示出了數字顯示區域Ila上的數字輸入和編輯流程。
[0078]圖1OA示出了數字顯示區域Ila上的子區域、對象槽和對象槽組的劃分。
[0079]圖10BU0C示出了數字顯示區域Ila上數字的正負值的編輯示意圖。
[0080]圖1lA?IlF示出了數字顯示區域Ila上對普通狀態和編輯狀態進行切換的示意圖。
[0081]圖12A?12C示出了清零處理的示意圖。
[0082]圖13示出了初始零拖動處理的細化流程圖。
[0083]圖14A、14B示出了初始零向左拖動和向右拖動的示意圖。
[0084]圖15示出了數字拖動處理的示意圖。
[0085]圖16示出了消除處理的示意圖。
[0086]圖17示出了生成處理的示意圖。
[0087]圖18A、18B示出了跨越的示意圖。
[0088]圖19A、19B示出了歸位的示意圖。
[0089]圖20示出了小數點拖動處理的示意圖。
[0090]圖21A、21B、21C示出了置換處理的示意圖。
[0091]圖22示出了 B區域處理的細化流程圖。
[0092]圖23示出了 B區域的響應區布局圖。
[0093]圖24示出了用戶單擊對象槽的示意圖。
[0094]圖25A、25B、25C、25D示出了 B區域中的輸入處理和修改處理的示意圖。
[0095]圖26A?26F示出了 A區域最終處理的幾種特殊情況的示例圖。
圖27A?27C示出了數量標記的示例圖。【具體實施方式】
[0096]下面結合附圖和實施例對本發明做進一步的描述。
[0097]基于觸摸屏的數字輸入編輯組件的第一實施例
[0098]圖1示出了本發明的基于觸摸屏的數字輸入編輯組件的第一實施例的原理。請參見圖1,本實施例的數字輸入編輯組件包括數字輸出單元11、數字輸入單元12以及功能輸入單元13。圖2示出了本實施例在觸摸屏上顯示的用戶界面。
[0099]數字輸出單元11在觸摸屏的數字顯示區域Ila中顯示用戶輸入的數字,而且數字顯示區域Ila中也提供對數字的編輯操作。這種編輯操作既可以是點擊操作,也可以是滑動操作(拖動數字的操作)。
[0100]數字輸入單元12在觸摸屏的數字響應區域12a中顯示O?9這十個數字以供用戶進行按鍵式以及滑動式的操作。較佳的,O?9這十個數字在觸摸屏上所示的呈輪盤狀的數字響應區域12a是依序以環形順序排列的,這樣便于數字輸入的滑動操作。輪盤上的數字可以通過用戶的操作輸出到數字顯示區域Ila上,例如可以通過點擊輪盤上的數字將相應數字輸出到數字顯示區域Ila上,通過滑動經過輪盤上的數字將相應的數字輸出到數字顯示區域Ila上。
[0101]功能輸入單元13在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作。功能響應區域設計成按鈕響應區域,按鈕響應區域分為角按鈕響應區13a (稱為Corner Buttons)和中央按鈕響應區13b (稱為Central Buttons Area),其中角按鈕響應區13a位于輪盤狀的數字響應區域12a的外側的四個角上,中央按鈕響應區13b位于輪盤狀的數字響應區域12a的內部區域。
[0102]在本實施例中,功能輸入單元13是運算符號輸入單元,其中在角按鈕響應區13a中分別設置加、減、乘、除的運算符號按鈕,在中央按鈕響應區13b上設置等號、小數點的運算符號按鈕,這些按鈕提供給用戶做按鍵式的操作。
[0103]當然,角按鈕響應區13a和中央按鈕響應區13b都可以是自定義的區域,根據需求不同可以任意變化,如圖5所示,例如如果整個用戶界面是手機撥號盤,則角按鈕響應區13a可以是聯系人、接聽掛斷等不同功能的按鈕,而中央按鈕響應區13b可以是接聽掛斷等,根據具體應用情況可相應自由變動。
_4] 基于觸摸屏的數字輸入編輯組件的第二實施例
[0105]圖3示出了本發明的基于觸摸屏的數字輸入編輯組件的第二實施例的原理。請參見圖3,本實施例的數字輸入編輯組件包括數字輸出單元21、數字輸入單元22、功能輸入單元23以及數階顯示單元24。圖4示出了本實施例在觸摸屏上顯示的用戶界面。
[0106]數字輸出單元21在觸摸屏的數字顯示區域21a (稱為G-Number)中顯示用戶輸入的數字,而且數字顯示區域21a中也提供對數字的編輯操作。這種編輯操作既可以是點擊操作,也可以是滑動操作(拖動數字的操作)。
[0107]數字輸入單元22在觸摸屏的數字響應區域22a中顯示O?9這十個數字以供用戶進行按鍵式以及滑動式的操作。較佳的,O?9這十個數字在觸摸屏上所示的呈輪盤狀的數字響應區域22a是依序以環形順序排列的,這樣便于數字輸入的滑動操作。輪盤(稱為G-Wheel)上的數字可以通過用戶的操作輸入到數字顯示區域21a上,例如可以通過點擊輪盤上的數字將相應數字輸出到數字顯示區域21a上,通過滑動經過輪盤上的數字將相應的數字輸出到數字顯示區域21a上。
[0108]功能輸入單元23在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作。功能響應區域設計成按鈕響應區域,按鈕響應區域分為角按鈕響應區23a和中央按鈕響應區23b,其中角按鈕響應區23a位于輪盤狀的數字響應區域22a的外側的四個角上,中央按鈕響應區23b位于輪盤狀的數字響應區域22a的內部區域。
[0109]在本實施例中,功能輸入單元23是運算符號輸入單元,其中在角按鈕響應區23a中分別設置加、減、乘、除的運算符號按鈕,在中央按鈕響應區23b上設置等號、小數點的運算符號按鈕,這些按鈕提供給用戶做按鍵式的操作。
[0110]當然,角按鈕響應區23a和中央按鈕響應區23b都可以是自定義的區域,根據需求不同可以任意變化,如圖5所示,例如如果整個用戶界面是手機撥號盤,則角按鈕響應區23a可以是聯系人、接聽掛斷等不同功能的按鈕,而中央按鈕響應區23b可以是接聽掛斷等,根據具體應用情況可相應自由變動。
[0111]在本實施例中,數階顯示單元24用于在觸摸屏的數階顯示區域24a (稱為G-Marker)中表示數字顯示區域21a中的數字的數階,其中數階顯示區域24a位于數字顯示區域21a的正上方或者正下方(在本實施例中是正下方)并通過一分隔符號組(在本實施例中為倒三角符號)來劃分對應的數字,在數階顯示區域24a的最前方為一主提示符,以顯示當前數字的數階大小。
[0112]傳統的數量級標記通過每隔10的三次方插入一個逗號來產生提示,如圖27A所示,這樣人們不需要去數整個數字串到底有多少位就能了解這個數字在多大的數量級上。如圖27A所示,一看便知是IM (Million)。但是傳統的數量級標記法在現代智能設備上遇到了新的挑戰。因為智能設備(特別是移動設備)屏幕的寬度有限,所以逗號占用了非常有限的橫向顯示空間,使得能夠表示的數字位數減少了。
[0113]在本發明中,可以采用倒三角符號來代替逗號,放在數字串的下方,不占用橫向顯示空間,以此來解決傳統數量級標記法遇到的問題,如圖27B所示,數量(數階)標記由兩部分組成:主提示符和分隔符號組。
[0114]傳統的標記法并沒有明確的標識出數字的數量級,如果數字特別大的時候,用戶不得不去數逗號的數目,以此來算出數量級。比如下面這個數:54,554,545,064, 565,664,455,434,用戶先要數出逗號的數目,這里逗號數目為7,這個數的數量級為7X3+1=22及10的22次方。主提示符的作用是利用智能設備的計算能力,讓設備代替人去“數逗號”,比如上邊的數字的主提示符為“G22”,這樣用戶不需要去數逗號直接就知道這個數的數量級了。主提示符的格式為:(1)有小數點的情況:Gn,m,(2)沒有小數點的情況:Gn。G表示這是一個主提示符,η為整數部分的數量級冪的指數,m為小數部分數量級冪的指數的相反數。比如12345678.0012這個數的整數部分是12345678,數量級冪為10 Λ 7,指數為7,小數部分為0.0012,數量級冪為10 Λ _4,所以這個數的主提示符為G7.4,另外沒有小數部分的數,比如123456789這個數相應的主提示符就是G8。分隔符號(即倒三角符號)是代替逗號,并且不占用橫向數字顯示空間,而是放在數字串下邊的數字與數字之間,其主要作用就是節省橫向顯示空間。另外還有和傳統標記法不同的是,傳統標記法的分隔符只分隔整數部分,而不分隔小數部分,但是本發明的分隔符在小數部分也會分隔,如圖27C所示。[0115]基于觸摸屏的數字輸入編輯方法的實施例
[0116]本發明的基于觸摸屏的數字輸入編輯方法是根據上述的基于觸摸屏的數字輸入編輯組件來實現的。由于基于觸摸屏的數字輸入編輯組件在前述內容已經詳細描述,在此不再贅述。
[0117]本實施例的方法如圖6所示,詳述如下。
[0118]步驟S60:對用戶的手勢進行識別,若是單擊手勢則直接進行單個數字的輸入,若是滑動手勢則進入后續的步驟。
[0119]步驟S61:對用戶在觸摸屏上的滑動軌跡進行采樣,以獲得當前采樣點的坐標位置,并保存上一個采樣點的坐標位置。采樣頻率一般為屏幕刷新率,例如60幀每秒。
[0120]步驟S62:根據采樣到的坐標位置獲得用戶當前輸入位置所在區域,是位于背景區域、數字響應區域或是功能響應區域。
[0121]在本實施例中,觸摸屏的功能響應區域是按鈕響應區域,按鈕響應區域分為角按鈕響應區和中央按鈕響應區,其中角按鈕響應區位于輪盤狀的數字響應區域的外側的四個角上,中央按鈕響應區位于輪盤狀的數字響應區域的內部區域,功能輸入單元是運算符號輸入單元,其中在角按鈕響應區上分別設置加、減、乘、除的運算符號,在中央按鈕響應區上設置等號、小數點的運算符號,按鈕響應區域不接受滑動手勢只接受單擊手勢的操作。
[0122]利用遮罩數組來實現對輸入位置所在區域的判斷,遮罩數組是一個二維數組,這個數組中的每個元素都與觸摸屏上的一個像素對應。可以把這個二維數組看成一幅二維圖,把不同的數值看成是不同的顏色,就可以在這幅圖(數字陣列)上用不同的顏色(不同的數值)作圖。先將整個數組清零,給O?9十個數字編號為10?19,然后用編號值在這個二維圖上圍繞輪盤畫10個圓,每個圓都包含一個輪盤上的數字且編號值與輪盤上的數字的值對應,同理給其他按鈕編號,四個角按鈕Al?A4編號為21?24,兩個中央區按鈕CO?Cl編號為30?31,然后用編號值作圓包含這些按鈕。
[0123]在用戶界面上,背景區域是數值為零的區域,數字響應區域是數值為10?19的區域,按鈕響應區域是數值為21?24及30?31的區域。
[0124]根據輸入位置的坐標值(X,y)從遮罩數組中取值V,以此來判斷用戶當前輸入位置所在區域。如果V屬于區間[10?19]中,則說明用戶當前輸入位置在數字響應區內,t匕如V=ll,則說明用戶當前輸入位置在輪盤上的數字“I”上。同理,如果V屬于區間[21?24],比如V=22則說明用戶當前的輸入位置在右上角的角按鈕上。如果V屬于區間[30?31],則說明用戶當前輸入位置在中央按鈕區的某一個按鈕之上。
[0125]步驟S63:基于上一個采樣點和當前采樣點的坐標位置判斷用戶軌跡的方式:若上一個采樣點在數字響應區域外且當前采樣點在數字響應區域內,則判斷為用戶從數字響應區域外滑動進入數字響應區域內,若上一個采樣點和當前采樣點均在數字響應區域內,則判斷為用戶在數字響應區域內滑動,若上一個采樣點在數字響應區域內且當前采樣點在數字響應區域外,則判斷為用戶從數字響應區域內滑動到數字響應區域外。
[0126]步驟S64:基于用戶軌跡的方式判斷是否觸發一次數字輸入,且輸入的值是由預設的當前輸入位置所在區域和數值的對應關系確定。
[0127]在觸發一次數字輸入的判斷中,若從數字響應區域外滑動進入數字響應區域內則觸發一次數字輸入,若在數字響應區域內滑動且用戶輸入的初始位置在數字響應區域內則觸發一次數字輸入。
[0128]如果上一個采樣點在數字響應區外(V在區間[10?19]之外),并且當前采樣點在數字響應區內(V屬于區間[10?19]),則判斷為用戶從數字響應區外滑動進入了數字響應區內,這樣就觸發一次數字輸入(輸入的值等于編號值對應的數值,比如V=15對應的數值是5,即在屏幕上輸入5)。當用戶在數字響應區內滑動(有一個例外,如果用戶輸入的初始位置就在數字響應區內,則觸發一次輸入)或從數字響應區內滑動到數字響應區外都不觸發數字輸入。
[0129]這樣當用戶連續的在輪盤上或輪盤間滑動時,每經過一個數字響應區,都會輸入一個與該數字響應區對應的數到屏幕上,從而實現了通過滑動進行連續的數字輸入。
[0130]此外,當用戶在滑動時,有可能滑動軌跡會經過按鈕響應區,但此時不觸發按鈕功能,以此來保證連續輸入數字不被打斷。按鈕只響應“單擊”這種手勢,程序會實時的偵測用戶的手勢。數字響應區除了響應“滑動手勢”,同時也響應“單擊”手勢,也就是說,用戶也可以通過單擊數字響應區來進行數字輸入。
[0131]基于觸摸屏的數字輸入編輯:系統的實施例
[0132]本發明的基于觸摸屏的數字輸入編輯系統是根據上述的基于觸摸屏的數字輸入編輯組件來實現的。由于基于觸摸屏的數字輸入編輯組件在前述內容已經詳細描述,在此不再贅述。
[0133]如圖7所示,本實施例的數字輸入編輯系統包括:手勢識別裝置71、采樣位置獲取裝置72、區域判斷裝置73、軌跡方式判斷裝置74、輸入觸發裝置75。
[0134]手勢識別裝置71對用戶的手勢進行識別,若是單擊手勢則直接進行單個數字的輸入,若是滑動手勢則進入后續的裝置進行處理。
[0135]采樣位置獲取裝置72對用戶在觸摸屏上的滑動軌跡進行采樣,以獲得當前采樣點的坐標位置,并保存上一個采樣點的坐標位置。采樣頻率一般為屏幕刷新率,例如60幀每秒。
[0136]區域判斷裝置73根據采樣到的坐標位置獲得用戶當前輸入位置所在區域,是位于背景區域、數字響應區域或是功能響應區域。
[0137]觸摸屏的功能響應區域是按鈕響應區域,按鈕響應區域分為角按鈕響應區和中央按鈕響應區,其中角按鈕響應區位于輪盤狀的數字響應區域的外側的四個角上,中央按鈕響應區位于輪盤狀的數字響應區域的內部區域,功能輸入單元是運算符號輸入單元,其中在角按鈕響應區上分別設置加、減、乘、除的運算符號,在中央按鈕響應區上設置等號、小數點的運算符號,按鈕響應區域不接受滑動手勢只接受單擊手勢的操作。
[0138]利用遮罩數組來實現對輸入位置所在區域的判斷,遮罩數組是一個二維數組,這個數組中的每個元素都與觸摸屏上的一個像素對應。可以把這個二維數組看成一幅二維圖,把不同的數值看成是不同的顏色,就可以在這幅圖(數字陣列)上用不同的顏色(不同的數值)作圖。先將整個數組清零,給O?9十個數字編號為10?19,然后用編號值在這個二維圖上圍繞輪盤畫10個圓,每個圓都包含一個輪盤上的數字且編號值與輪盤上的數字的值對應,同理給其他按鈕編號,四個角按鈕Al?A4編號為21?24,兩個中央區按鈕CO?Cl編號為30?31,然后用編號值作圓包含這些按鈕。
[0139]在用戶界面上,背景區域是數值為零的區域,數字響應區域是數值為10?19的區域,按鈕響應區域是數值為21?24及30?31的區域。
[0140]根據輸入位置的坐標值(X,y)從遮罩數組中取值V,以此來判斷用戶當前輸入位置所在區域。如果V屬于區間[10?19]中,則說明用戶當前輸入位置在數字響應區內,t匕如V=ll,則說明用戶當前輸入位置在輪盤上的數字“I”上。同理,如果V屬于區間[21?24],比如V=22則說明用戶當前的輸入位置在右上角的角按鈕上。如果V屬于區間[30?31],則說明用戶當前輸入位置在中央按鈕區的某一個按鈕之上。
[0141]軌跡方式判斷裝置74基于上一個采樣點和當前采樣點的坐標位置判斷用戶軌跡的方式:若上一個采樣點在數字響應區域外且當前采樣點在數字響應區域內,則判斷為用戶從數字響應區域外滑動進入數字響應區域內,若上一個采樣點和當前采樣點均在數字響應區域內,則判斷為用戶在數字響應區域內滑動,若上一個采樣點在數字響應區域內且當前采樣點在數字響應區域外,則判斷為用戶從數字響應區域內滑動到數字響應區域外。
[0142]輸入觸發裝置75基于用戶軌跡的方式判斷是否觸發一次數字輸入,且輸入的值是由預設的當前輸入位置所在區域和數值的對應關系確定。
[0143]在輸入觸發裝置75的觸發一次數字輸入的判斷中,若從數字響應區域外滑動進入數字響應區域內則觸發一次數字輸入,若在數字響應區域內滑動且用戶輸入的初始位置在數字響應區域內則觸發一次數字輸入。
[0144]如果上一個采樣點在數字響應區外(V在區間[10?19]之外),并且當前采樣點在數字響應區內(V屬于區間[10?19]),則判斷為用戶從數字響應區外滑動進入了數字響應區內,這樣就觸發一次數字輸入(輸入的值等于編號值對應的數值,比如V=15對應的數值是5,即在屏幕上輸入5)。當用戶在數字響應區內滑動(有一個例外,如果用戶輸入的初始位置就在數字響應區內,則觸發一次輸入)或從數字響應區內滑動到數字響應區外都不觸發數字輸入。
[0145]這樣當用戶連續的在輪盤上或輪盤間滑動時,每經過一個數字響應區,都會輸入一個與該數字響應區對應的數到屏幕上,從而實現了通過滑動進行連續的數字輸入。
[0146]此外,當用戶在滑動時,有可能滑動軌跡會經過按鈕響應區,但此時不觸發按鈕功能,以此來保證連續輸入數字不被打斷。按鈕只響應“單擊”這種手勢,程序會實時的偵測用戶的手勢。數字響應區除了響應“滑動手勢”,同時也響應“單擊”手勢,也就是說,用戶也可以通過單擊數字響應區來進行數字輸入。
[0147]基于觸摸屏的數字輸入編輯方法的實施例(整體方案)
[0148]圖8示出了本發明的基于觸摸屏的數字輸入編輯方法的較佳實施例的整體流程。請參見圖8,首先程序啟動并進行初始化,然后檢測是否退出程序,在程序運行的情況下,檢測是否有用戶輸入,若有輸入則判斷輸入的初始位置所在區域,是位于如圖2所示的A區域(數字顯示區域IIa)還是B區域(數字響應區域12a、角按鈕響應區13a、中央按鈕響應區13b和背景區域的組合),若在A區域則進行A區域的處理流程,若在B區域則進行B區域的處理流程。
[0149]A區域(數字顯示區域)的處理流程(可單獨作為實施例)
[0150]圖9接著示出了數字顯示區域Ila上的輸入和編輯流程。請參見圖9,首先檢測用戶在數字顯示區域Ila中的手勢的類型,是單擊類型還是滑動類型。
[0151]若為單擊類型,則進一步檢查用戶輸入位置所在的子區域,如圖10所示,此時存在三種情況:用戶輸入位置位于從最右邊對象槽起、數字和小數點構成的區域(為了簡化后面簡稱為A3);用戶輸入位置位于緊挨A3左邊的一個空對象槽(或者有負號的對象槽)(為了簡化后面簡稱為A2);用戶輸入位置位于A2左邊的所有空白區域(為了簡化后面簡稱為Al)。
[0152]對于用戶輸入位置位于Al的情況,歸位后直接進行A區域規格化處理的步驟。
[0153]如圖1OB和IOC所示,對于用戶輸入位置位于A2的情況,首先判斷當前數是否為負值,若為負值則通過在有負號的A2區域(對象槽)上的單擊消除負號,若不為負值則通過在空的A2區域(對象槽)上單擊的方式生成負號。最后歸位后直接進入A區域規格化處理的步驟。
[0154]如圖11A-11F所示,對于用戶輸入位置位于A3的情況,首先判斷對象槽的狀態,是處于如圖1lA所示的普通狀態還是圖1lB所示的編輯狀態。此外,還有一種如圖1lC所示的初始狀態,對象槽組中只有最右端的對象槽中有一個唯一的對象“O ”,且其處于非焦點狀態。當對象槽組處于普通狀態時,如圖1lD所示,通過單擊對象槽SI,使得對象“3”成為編輯焦點,對象槽組處于編輯狀態。當對象槽處于編輯狀態時,進一步判斷用戶輸入位置是否在編輯焦點對象之上。若用戶輸入位置位于編輯焦點對象之上,則取消編輯,如圖1lE所示,此時對象槽組處于編輯狀態,編輯焦點為SI中的對象“3”,用戶單擊對象槽SI,對象“3”編輯焦點被取消,對象槽組回歸普通狀態。若用戶輸入位置位于編輯焦點對象之外,此時需要改變編輯焦點,如圖1lF所示,對象槽組處于編輯狀態,編輯焦點為SI中的對象“3”,用戶單擊對象槽S2,對象“2”被設置為新焦點,對象“3”的編輯焦點被取消。最后歸位后進入A區域規格化處理的步驟。
[0155]上述為單擊手勢中的處理流程,以下為滑動手勢的處理流程。
[0156]首先檢測用戶輸入位置所在子區域,若為Al區域則重復檢測這一步驟,若為A2區域則進一步檢測是向左滑動還是向右滑動。若向左滑動則返回檢測所在子區域的步驟,若向右滑動則進行清零處理,并在清零處理之后返回檢測滑動方向的步驟,在滑動結束后歸位,然后進入A區域規格化處理的步驟。
[0157]清零處理請參見圖12A?12C的示意。清零處理實質上是一種消除處理,圖中的浮動組由深色框表明,浮動組是一串連續字符,作為一個整體隨著用戶的滑動進行移動。浮動焦點對象是指浮動組中處于用戶輸入位置上的對象,在消除處理時,處在用戶輸入位置上的對象成為浮動焦點對象,浮動焦點對象及其左邊連續的對象組成浮動組。如圖12A所示,用戶從Al開始向右滑動,當滑動到A2時,產生一個“虛零”,并且“虛零”單獨成為浮動組,向右進行消除。用戶一直向右滑動到最右端,待用戶輸入結束完成清零。如圖12B所示,用戶從A2開始向右滑動,A2立刻產生一個“虛零”,并且“虛零”單獨成為浮動組,向右進行消除。用戶一直向右滑動到最右端,待用戶輸入結束后完成清零。如圖12C所示,A2處有負號,設置負號為浮動焦點,并單獨成為浮動組,向右進行消除。用戶一直向右滑動到最右端,待用戶輸入結束后完成清零。
[0158]用戶輸入位置位于A3子區域的情況下,首先檢測當前數是否為零,若為零則進行初始零拖動處理的步驟,處理后歸位,然后進入A區域規格化處理的步驟。初始零拖動處理的詳細步驟請參見圖13,首先生成零浮動子串,然后判斷當前的零是否越過左邊對象槽。若當前的零越過了左邊對象槽,則在零的右邊生成小數點,接著組成零點浮動子串。之后,檢測滑動方向是向左滑動還是向右滑動。若向左滑動,則進行生成處理;若向右滑動,則將零點浮動子串變成零浮動子串,然后做消除處理。
[0159]具體而言,請參見圖14A,示出了初始零向左拖動的示例。首先零成為浮動焦點對象,當跨越了左邊的對象槽后在零的右邊生成小數點,由零和小數點組成浮動組,之后檢測浮動組是向左滑動還是向右滑動,若向左滑動則在浮動組右邊生成零(生成處理),若向右滑動則如圖14B所示,從零點浮動子串變成了零浮動子串(浮動組中只包含“0”,小數點被排除在外),如果繼續向右滑動,則變成了普通的清零操作。
[0160]用戶輸入位置位于A3子區域的情況下,且當前數不為零時,檢測對象類型,是數字還是小數點。若對象為數字則進行數字拖動處理,然后歸位和做A區域規格化處理,若對象為小數點則進行小數點拖動處理,然后歸位和做A區域規格化處理。
[0161]數字拖動處理的細化步驟如圖15所示,首先生成數字浮動組,然后檢測滑動方向是向左滑動還是向右滑動。若為向左滑動則做生成處理,若為向右滑動則做消除處理。生成處理和消除處理在之前的內容中也提到過,為了進一步加深理解,特別結合附圖解釋生成處理和消除處理。
[0162]如圖16所示,消除處理的具體過程如下,圖中的Si代表對象槽(SLOT),浮動組由深色框表明。用戶初始輸入位置位于對象S2的偵測范圍內,用戶開始向右滑動。對象“3”成為浮動焦點對象,并和它左邊的兩個對象“ I ”、“2”組成浮動組。浮動組隨著用戶的滑動向右移動,當浮動組右端“跨越” 了右邊的一個對象槽時,該對象槽原本的對象“4”被消除。
[0163]如圖17所示,生成處理的具體過程如下所述,用戶初始輸入位置位于SI的偵測范圍內,用戶開始向左滑動。SI中的對象“2”成為浮動焦點對象,并和S2中的對象“I”組成浮動組。浮動組“12”隨著用戶的滑動向左移動,當浮動組右端“跨越”了右邊的一個對象槽時,該對象槽生成浮動焦點對象的克隆“2”。生成處理一般情況下只生成浮動焦點對象的克隆,但是在“小數點拖動處理”和“初始零拖動處理”中有特殊情況存在,具體參考“小數點拖動處理”和“初始零拖動處理”的詳細流程。
[0164]如圖18A、18B所示,“跨越”的具體步驟如下。圖18A示出了向右跨越,當浮動組“123”向右移動,并且其右端邊緣越過SI的四分之三處(從左向右)時,即為浮動組“跨越”了 SI,這個時候執行消除操作,SI中的對象“4”被消除。當浮動組“123”向左移動,并且其右端邊緣越過SI的四分之三處(從右向左)時,即為浮動組“跨越”了 SI,這個時候執行生成操作,SI中生成浮動焦點對象的克隆“2”。
[0165]小數點拖動處理的細化步驟如圖20所示。首先,小數點獨自成為浮動組。然后,檢測滑動方向是向左滑動還是向右滑動,若是向左滑動則判斷小數點左邊是否有對象存在。在有對象存在的前提下,根據對象是數字對象還是負號對象分別進行處理。對于數字對象的情況,在小數點跨越左邊對象的對象槽的情況下,進行置換處理,在小數點沒有跨越左邊對象的對象槽的情況下,返回到檢測滑動方向的步驟。對于負號對象的情況,小數點與負號對象組成浮動組,在小數點跨越了左邊對象槽的情況下,在小數點右邊生成零,然后返回檢測滑動方向的步驟。相反,在小數點左邊沒有對象存在的情況下,當小數點跨越了左邊對象槽的時候,在小數點右邊生成零,進而返回到檢測滑動方向的步驟。
[0166]下面是滑動方向是向右滑動的處理過程。首先,判斷當前浮動組是否為”,如果是則解除浮動組”,使小數點獨自成為浮動組,然后再進入后續的步驟,如果當前浮動組不是”則可以直接進入后續的步驟。接著,判斷小數點右邊是否有數字對象存在,若右邊沒有數字對象則返回到檢測滑動方向的步驟,若右邊存在數字對象則進一步判斷小數點是否跨越右邊對象的對象槽,如果跨越了則進行置換處理,然后返回檢測滑動方向的步驟,如果沒有跨越則直接返回到檢測滑動方向的步驟。
[0167]圖20中所進行的置換處理請具體參見圖21A、21B和21C,其中圖21A示出了用戶從S2開始向右滑動的置換處理。用戶從S2開始向右滑動,S2中的小數點對象成為浮動焦點,并單獨組成浮動組,當小數點向右跨越了 SI時,SI中原來的對象“2”被置換到左邊的對象槽SI。圖21B示出了用戶從SI開始向左滑動的置換處理。用戶從SI開始向左滑動,SI中的小數點對象成為浮動焦點,并單獨組成浮動組,當小數點向左跨越了 S2時,S2中原來的對象“I”被置換到右邊的對象槽SI。用戶繼續向左滑動,當跨越S3時,左邊已經沒有可以置換的對象,在空出來的S2中生成零。圖21C示出了有負號的情況,首先用戶從SI開始向左滑動,然后,小數點獨立成為浮動組,當小數點向左跨越了 S2時,S2中原來的對象“I”被置換到右邊的對象槽SI。接著,如果用戶繼續向左滑動,則組成新的浮動組最后,如果此時用戶再向右移動時,則解除浮動組”,小數點獨自成為浮動組。
[0168]在最后,還需要進行歸位的操作和規格化處理。歸位的處理請參見圖19A和19B。如圖19A所示,當用戶拖動結束時,浮動組并不是剛好與對象槽吻合,浮動組右端所在對象槽沒有對象的情況下,則浮動組向右歸位。如圖19B所示,當用戶拖動結束時,浮動組并不是剛好與對象槽吻合,浮動組右端所在對象槽有一個對象“4”,則浮動組向左歸位。
[0169]規格化處理是指依據以下的原則對對象槽組中的數字串進行處理:(1)沒有小數點的情況下,最左邊有若干個零,則全部清除,保證最左邊的數字對象不為零;(2)如果最左邊時小數點,則在小數點左邊的對象槽中生成一個零;(3)如果數字槽組中只有一個負號,則將數字槽組恢復為初始狀態;(4)如果數字槽組中只有一連串0,則將數字槽組恢復為初始狀態;(5)有小數點的情況下,除非其整數部分只有一個O或一連串O,否則其整數部分遵循:1個O的情況下不做處理,一連串O的情況需要消除最左邊的所有0,只保留最右邊的I個O。
[0170]圖26A?26F示出了 A區域規格化處理的幾種特殊情況的示例。如圖26A所示,對象槽中處于編輯狀態,數字串最左邊的“ I”是編輯焦點,若此時用戶在B區域輸入0,則數字串最左端會變成“0”,即數字串變成“023”,需要將數字串變為正常的“23”。如圖26B所示,對象槽處于編輯狀態,數字串最左邊的“ I”是編輯焦點,若此時用戶在B區域輸入小數點,則數字串最左端是小數點”,即數字串變成“.23”,需要去掉小數點從而將數字串變為正常的“23”。如圖26C所示,用戶將小數點向左拖動,用戶結束拖動后,數字串最左端是小數點”,即數字串變成12”,需要去掉小數點從而將數字串變為正常的“12”。如圖26D所示,用戶將負號向右拖動,開始清零處理,用戶拖動負號到最右端結束拖動,最后最右端只有一個負號,需要去掉負號變成數字“O”。如圖26E所示,用戶進行初始零拖動,拖動到左邊時又改變方向向右拖動,最后小數點被消去,數字串有三個“0”,需要去掉多余的“O”。如圖26F所示,用戶向右拖動零,開始消除處理,用戶結束拖動后小數點被消去,最后數字串最左端有一個負號和兩個0,即數字串“-001”,需要消除多余的“-00”。
[0171]上述內容就是A區域的處理流程。需要說明的是,A區域的處理流程可以作為單獨的實施例執行,亦即,在如圖2所示的數字輸入編輯的用戶交互界面上,可以通過A區域處理流程的實施方式進行數字的輸入和編輯。
[0172]下面是B區域的處理流程。
[0173]B區域的處理流稈
[0174]請參見圖22,B區域的處理為:首先檢查用戶手勢類型,判斷是單擊還是滑動,若是單擊,則進一步判斷單擊位置所在區域,是位于角按鈕響應區、中央按鈕響應區還是數字響應區,分為三種情況來處理。請結合圖23,示出了 B區域的各個響應區的布局,圖中陰影部分為響應遮罩區,數字響應區位于輪盤內,中央按鈕響應區位于輪盤內圈,角按鈕響應區位于輪盤外圈的四個角上。
[0175]若單擊位置位于角按鈕響應區,則執行角按鈕功能。若單擊位置位于中央按鈕響應區,則執行中央按鈕功能。若單擊位置位于數字響應區,則進一步判斷A區域對象槽是否處于編輯狀態。在判斷是否處于編輯狀態的步驟中,請參見圖24,用戶單擊對象槽SI時,SI中的對象“3”變為編輯焦點,整個對象槽處于編輯狀態。若A區域對象槽處于編輯狀態則進行修改處理,若處于非編輯狀態則進行輸入處理。輸入處理是指當A區域的數字串處于普通狀態(非編輯狀態),此時用戶在B區域輸入數字或小數點,將會在A區域數字串的末尾(最右端)插入用戶的輸入值,具體請參見圖25A,A區域當前數字為“ 123”,用戶在B區域輸入“5”,原來的數字組“123”整體向左移動一個對象槽,并在最右端SO生成對象“5”。修改處理是指當A區域的數字串處于編輯狀態,此時用戶在B區域輸入數字或小數點,將會改變A區域數字串中的編輯焦點對象為用戶的輸入值,并還原數字串為普通狀態。請參見圖25B,A區域當前數字為“123”,處于編輯狀態并且SI中的對象“2”是編輯焦點,用戶在B區域輸入“5”,原來在SI中的編輯焦點對象“2”被修改成“5”,并且取消了焦點狀態,對象槽組恢復為普通狀態。當然,若單擊位置位于非響應區,則不作任何的處理。
[0176]還有一種如圖25(:和2?的特殊情況。在圖25C中,當前數字串處于普通狀態,并且已經有一個小數點,此時用戶在B區域輸入小數點”,這次輸入沒有任何效果。在圖
中,當前數字串處于編輯狀態,并且已經有一個小數點,用戶在B區域輸入小數點”,此時會取消編輯狀態。
[0177]以下是滑動手勢的處理。首先偵測用戶輸入位置,保存上一幀用戶輸入位置。然后對比上一幀用戶輸入位置和當前幀用戶輸入位置,只有在用戶手勢是從非響應區(也成為背景區域)滑動至數字響應區的情況下才進入后續的處理,否則(非響應區滑動至非響應區、數字響應區滑動至數字響應區、數字響應區滑動至非響應區)繼續第一步的偵測用戶輸入位置的步驟。
[0178]在用戶手勢是從非響應區滑動至數字響應區的情況下,判斷A區域對象槽是否處于編輯狀態(是否處于編輯狀態請參見圖24),若處于編輯狀態則進行如圖25B所示的修改處理,若處于非編輯狀態則進行如圖25A所示的輸入處理。
[0179]需要說明的是,B區域的處理流程可以作為單獨的實施例執行,亦即,在如圖2所示的數字輸入編輯的用戶交互界面上,可以單獨通過B區域處理流程的實施方式進行數字的輸入和編輯。
[0180]基于觸摸屏的數字輸入編輯方法的實施例(簡化方案I)
[0181]本實施例針對前述的基于觸摸屏的數字輸入編輯方法做了一定的簡化,是在前述的基于觸摸屏的數字輸入編輯組件上所實施的方法,該方法是基于圖2所示的A區域上所做的操作。這一方案的主體是針對滑動手勢的數字輸入編輯,具體過程如下。
[0182]首先,檢測用戶在數字顯示區域中的手勢的類型,當手勢是滑動類型時進行后續的步驟。然后,檢測用戶輸入位置在數字顯示區域中的子區域,當輸入位置是位于數字和小數點構成的子區域內時,進行后續的步驟。接著,檢測當前數是為零,只有當前數為非零時進行后續的步驟。最后,檢測用戶處理的對象類型,當所處理的是數字時進行數字拖動處理:生成數字浮動組,若向左滑動則進行生成處理,若向右滑動則進行消除處理。對數字的拖動處理的具體示例在前述的實施例中已經有過詳細的描述,在此不再贅述。
[0183]為了更好的效果,本實施例可以增加對單擊手勢的處理。較佳的,在檢測出用戶手勢是單擊類型時,先檢查用戶輸入位置在數字顯示區域中的子區域,當輸入位置是位于數字和小數點構成的子區域內時進行后續的步驟;然后,判斷對象槽狀態,當對象槽為普通狀態時修改成編輯狀態,當對象槽為編輯狀態時基于輸入位置是否位于編輯焦點對象之上進行操作:當輸入位置位于編輯焦點對象之上時取消編輯狀態,當輸入位置位于編輯焦點對象之外時改變編輯焦點。
[0184]為了更好的效果,本實施例可以增加單擊操作中對數字的正負號的處理。較佳的,當單擊操作中輸入位置位于緊挨數字和小數點構成的子區域的左邊的一個空對象槽或者帶有負號的對象槽時,若當前數為負值則消去負號,若當前數為正值則生成負號。
[0185]為了更好的效果,本實施例可以增加滑動操作中的輸入位置位于數字和小數點構成的子區域之外的這一情況的處理。較佳的,在滑動操作中當輸入位置位于數字和小數點構成的子區域之外時,首先,若輸入位置位于緊挨數字和小數點構成的子區域的左邊的一個空對象槽或者有負號的對象槽時,進行后續的步驟,否則回到檢測用戶輸入位置在數字顯示區域中的子區域的步驟;接著,檢測滑動方向是向左滑動還是向右滑動,若向左滑動則回到檢測用戶輸入位置在數字顯示區域中的子區域的步驟,若向右滑動則進行清零處理。
[0186]為了更好的效果,本實施例可以增加滑動操作中對當前數為零時的處理。較佳的,在滑動操作中檢測出用戶輸入位置所在子區域位于數字和小數點構成的子區域內時,若當前數為零,則進行初始零的拖動處理。首先生成零浮動子串;在當前的零越過左邊對象槽時在零的右邊生成小數點;然后組成零點浮動子串;最后,檢測滑動方向是向左滑動或是向右滑動,若向左滑動則做生成處理,若向右滑動則零點浮動子串變為零浮動子串后進行消除處理。
[0187]為了更好的效果,本實施例可以增加對小數點拖動的處理。當所處理的是小數點時進行小數點拖動處理的步驟如下:檢測是向左滑動或是向右滑動;在向左滑動的情況下,判斷小數點左邊是否有數字對象存在,若有數字對象存在則在小數點跨越左邊對象的對象槽之時進行置換處理,若無數字對象存在則在小數點跨越左邊對象的對象槽之時在小數點右邊生成零;在向右滑動的情況下,判斷小數點右邊是否有數字對象存在,若有數字對象存在則在小數點跨越右邊對象的對象槽之時進行置換處理。
[0188]基于觸摸屏的數字輸入編輯方法的實施例(簡化方案2)
[0189]本實施例針對前述的基于觸摸屏的數字輸入編輯方法做了一定的簡化,是在前述的基于觸摸屏的數字輸入編輯組件上所實施的方法,該方法是基于圖2所示的B區域上所做的操作。這一方案的主體是針對滑動手勢的數字輸入編輯,具體過程如下。
[0190]首先,檢查用戶手勢類型,當手勢為滑動操作時進入后續的步驟。接著,檢測當前幀用戶輸入位置,保存上一幀用戶輸入位置,根據上一幀用戶輸入位置和當前幀用戶輸入位置的對比結果判斷滑動手勢的類型,當滑動是從數字響應區域之外滑動到數字響應區域內時進入后續的步驟;最后,判斷數字顯示區域內的對象槽是否處于編輯狀態,若處于編輯狀態則進行修改處理,若位于非編輯狀態則進行輸入處理。修改處理和輸入處理等的具體示例請參見前述的實施例,在此不再贅述。
[0191]為了體現更好的效果,本實施例對單擊手勢進行了設定。較佳的,當手勢為單擊操作時,進行下面的步驟:判斷單擊位置所在區域,若為功能響應區域則執行相應的功能,若為數字響應區域則進入后續的步驟;判斷數字顯示區域內的對象槽是否處于編輯狀態,若處于編輯狀態則進行修改處理,若位于非編輯狀態則進行輸入處理。
[0192]上述實施例是提供給本領域普通技術人員來實現和使用本發明的,本領域普通技術人員可在不脫離本發明的發明思想的情況下,對上述實施例做出種種修改或變化,因而本發明的保護范圍并不被上述實施例所限,而應該是符合權利要求書所提到的創新性特征的最大范圍。
【權利要求】
1.一種基于觸摸屏的數字輸入編輯組件,包括: 數字輸出單元,用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字,且數字顯示區域提供對數字的編輯操作; 數字輸入單元,用于在觸摸屏的數字響應區域中顯示O~9的數字以供用戶進行按鍵式和滑動式的操作; 功能輸入單元,用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作。
2.根據權利要求1所述的基于觸摸屏的數字輸入編輯組件,其特征在于,所述組件還包括: 數階顯示單元,用于在觸摸屏的數階顯示區域中表示數字顯示區域中的數字的數階,其中數階顯示區域位于數字顯示區域的正上方或者正下方并通過一分隔符號組來劃分對應的數字,在數階顯示區域的最前方為一主提示符,以顯示當前數字的數階大小。
3.根據權利要求1所述的基于觸摸屏的數字輸入編輯組件,其特征在于,O~9的這10個數字在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列,便于數字輸入的滑動式操作。
4.根據權利要求3所述的基于觸摸屏的數字輸入編輯組件,其特征在于,觸摸屏的功能響應區域是按鈕響應區域,按鈕響應區域分為角按鈕響應區和中央按鈕響應區,其中角按鈕響應區位于輪盤狀的數字響應區域的外側的四個角上,中央按鈕響應區位于輪盤狀的數字響應區域的內部區域。
5.根據權利要求4所述的基于觸摸屏的數字輸入編輯組件,其特征在于,功能輸入單元是運算符號輸入單元,其中在角按鈕響應區上分別設置加、減、乘、除的運算符號,在中央按鈕響應區上設置等號、小數點的運算符號,以供用戶按鍵式操作。
6.一種基于觸摸屏的數字輸入編輯方法,是基于觸摸屏的數字輸入編輯組件上的輸入編輯方法,其中基于觸摸屏的數字輸入編輯組件包括數字輸出單元、數字輸入單元和功能輸入單元,數字輸出單元用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字且提供對數字的編輯操作,數字輸入單元用于在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列顯示O~9的數字以供用戶進行按鍵式和滑動式的操作,功能輸入單元用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作,方法包括: 對用戶的手勢進行識別,若是單擊手勢則直接進行單個數字的輸入,若是滑動手勢則進入后續的步驟; 對用戶在觸摸屏上的滑動軌跡進行采樣,以獲得當前采樣點的坐標位置,并保存上一個采樣點的坐標位置; 根據采樣到的坐標位置獲得用戶當前輸入位置所在區域,是位于背景區域、數字響應區域或是功能響應區域; 基于上一個采樣點和當前采樣點的坐標位置判斷用戶軌跡的方式:若上一個采樣點在數字響應區域外且當前采樣點在數字響應區域內,則判斷為用戶從數字響應區域外滑動進入數字響應區域內,若上一個采樣點和當前采樣點均在數字響應區域內,則判斷為用戶在數字響應區域內滑動,若上一個采樣點在數字響應區域內且當前采樣點在數字響應區域外,則判斷為用戶從數字響應區域內滑動到數字響應區域外;基于用戶軌跡的方式判斷是否觸發一次數字輸入,且輸入的值是由預設的當前輸入位置所在區域和數值的對應關系確定。
7.根據權利要求6所述的基于觸摸屏的數字輸入編輯方法,其特征在于,在觸發一次數字輸入的判斷中,若從數字響應區域外滑動進入數字響應區域內則觸發一次數字輸入,若在數字響應區域內滑動且用戶輸入的初始位置在數字響應區域內則觸發一次數字輸入。
8.根據權利要求6所述的基于觸摸屏的數字輸入編輯方法,其特征在于,觸摸屏的功能響應區域是按鈕響應區域,按鈕響應區域分為角按鈕響應區和中央按鈕響應區,其中角按鈕響應區位于輪盤狀的數字響應區域的外側的四個角上,中央按鈕響應區位于輪盤狀的數字響應區域的內部區域,功能輸入單元是運算符號輸入單元,其中在角按鈕響應區上分別設置加、減、乘、除的運算符號,在中央按鈕響應區上設置等號、小數點的運算符號,按鈕響應區域不接受滑動手勢只接受單擊手勢的操作。
9.一種基于觸摸屏的數字輸入編輯系統,是基于觸摸屏的數字輸入編輯組件上的輸入編輯系統,其中基于觸摸屏的數字輸入編輯組件包括數字輸出單元、數字輸入單元和功能輸入單元,數字輸出單元用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字且提供對數字的編輯操作,數字輸入單元用于在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列顯示O~9的數字以供用戶進行按鍵式和滑動式的操作,功能輸入單元用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作,系統包括: 手勢識別裝置,對用戶的手勢進行識別,若是單擊手勢則直接進行單個數字的輸入,若是滑動手勢則進入后續的裝置進行處理; 采樣位置獲取裝置, 對用戶在觸摸屏上的滑動軌跡進行采樣,以獲得當前采樣點的坐標位置,并保存上一個采樣點的坐標位置; 區域判斷裝置,根據采樣到的坐標位置獲得用戶當前輸入位置所在區域,是位于背景區域、數字響應區域或是功能響應區域; 軌跡方式判斷裝置,基于上一個采樣點和當前采樣點的坐標位置判斷用戶軌跡的方式:若上一個采樣點在數字響應區域外且當前采樣點在數字響應區域內,則判斷為用戶從數字響應區域外滑動進入數字響應區域內,若上一個采樣點和當前采樣點均在數字響應區域內,則判斷為用戶在數字響應區域內滑動,若上一個采樣點在數字響應區域內且當前采樣點在數字響應區域外,則判斷為用戶從數字響應區域內滑動到數字響應區域外; 輸入觸發裝置,基于用戶軌跡的方式判斷是否觸發一次數字輸入,且輸入的值是由預設的當前輸入位置所在區域和數值的對應關系確定。
10.根據權利要求9所述的基于觸摸屏的數字輸入編輯系統,其特征在于,在輸入觸發裝置的觸發一次數字輸入的判斷中,若從數字響應區域外滑動進入數字響應區域內則觸發一次數字輸入,若在數字響應區域內滑動且用戶輸入的初始位置在數字響應區域內則觸發一次數字輸入。
11.根據權利要求9所述的基于觸摸屏的數字輸入編輯系統,其特征在于,觸摸屏的功能響應區域是按鈕響應區域,按鈕響應區域分為角按鈕響應區和中央按鈕響應區,其中角按鈕響應區位于輪盤狀的數字響應區域的外側的四個角上,中央按鈕響應區位于輪盤狀的數字響應區域的內部區域,功能輸入單元是運算符號輸入單元,其中在角按鈕響應區上分別設置加、減、乘、除的運算符號,在中央按鈕響應區上設置等號、小數點的運算符號,按鈕響應區域不接受滑動手勢只接受單擊手勢的操作。
12.一種基于觸摸屏的數字輸入編輯方法,是基于觸摸屏的數字輸入編輯組件上的輸入編輯方法,其中基于觸摸屏的數字輸入編輯組件包括數字輸出單元、數字輸入單元和功能輸入單元,數字輸出單元用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字且提供對數字的編輯操作,數字輸入單元用于在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列顯示O~9的數字以供用戶進行按鍵式和滑動式的操作,功能輸入單元用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作,方法包括: 檢測用戶在數字顯示區域中的手勢的類型,當手勢是滑動類型時進行后續的步驟; 檢測用戶輸入位置在數字顯示區域中的子區域,當輸入位置是位于數字和小數點構成的子區域內時,進行后續的步驟; 檢測當前數是為零,若當前數為非零時進行后續的步驟; 檢測用戶處理的對象類型,當所處理的是數字時進行數字拖動處理:生成數字浮動組,若向左滑動則進行生成處理,若向右滑動則進行消除處理; 歸位處理,使得數字的位置和對象槽的位置一致。
13.根據權利要求12所述的基于觸摸屏的數字輸入編輯方法,其特征在于,當手勢是單擊類型時,進行后續的步驟: 檢查用戶輸入位置在數字顯示區域中的子區域,當輸入位置是位于數字和小數點構成的子區域內時進行后續的步驟; 判斷對象槽狀態,當對象槽為普通狀態時修改成編輯狀態,當對象槽為編輯狀態時基于輸入位置是否位于編輯焦點對象之上進行操作:當輸入位置位于編輯焦點對象之上時取消編輯狀態,當輸入位置位于編輯焦點對象之外時改變編輯焦點。
14.根據權利要求13所述的基于觸摸屏的數字輸入編輯方法,其特征在于,當單擊操作中輸入位置位于緊挨數字和小數點構成的子區域的左邊的一個空對象槽或者帶有負號的對象槽時,若當前數為負值則消去負號,若當前數為正值則生成負號。
15.根據權利要求12所述的基于觸摸屏的數字輸入編輯方法,其特征在于,在滑動操作中當輸入位置位于數字和小數點構成的子區域之外時,進行后續的步驟: 若輸入位置位于緊挨數字和小數點構成的子區域的左邊的一個空對象槽或者有負號的對象槽時,進行后續的步驟,否則回到檢測用戶輸入位置在數字顯示區域中的子區域的步驟; 檢測滑動方向是向左滑動還是向右滑動,若向左滑動則回到檢測用戶輸入位置在數字顯示區域中的子區域的步驟,若向右滑動則進行清零處理。
16.根據權利要求12所述的基于觸摸屏的數字輸入編輯方法,其特征在于,當當前數為零時進行初始零拖動處理的步驟如下: 生成零浮動子串; 當前的零越過左邊對象槽時在零的右邊生成小數點; 組成零點浮動子串; 檢測滑動方向是向左滑動或是向右滑動,若向左滑動則做生成處理,若向右滑動則零點浮動子串變為零浮動子串后進行消除處理。
17.根據權利要求12所述的基于觸摸屏的數字輸入編輯方法,其特征在于,當所處理的是小數點時進行小數點拖動處理的步驟如下: 檢測是向左滑動或是向右滑動; 在向左滑動的情況下,判斷小數點左邊是否有數字對象存在,若有數字對象存在則在小數點跨越左邊對象的對象槽之時進行置換處理,若無數字對象存在則在小數點跨越左邊對象的對象槽之時在小數點右邊生成零; 在向右滑動的情況下,判斷小數點右邊是否有數字對象存在,若有數字對象存在則在小數點跨越右邊對象的對象槽之時進行置換處理。
18.根據權利要求12所述的基于觸摸屏的數字輸入編輯方法,其特征在于,在歸位處理之后進行規格化處理,對以下五種情況分別進行處理: 沒有小數點的情況下,最左邊有若干個零,則全部清除,保證最左邊的數字對象不為零; 如果最左邊時小數點,則在小數點左邊的對象槽中生成一個零; 如果數字槽組中只有一個負號,則將數字槽組恢復為初始狀態; 如果數字槽組中只有一連串O,則將數字槽組恢復為初始狀態; 有小數點的情況下 ,除非其整數部分只有一個O或一連串O,否則其整數部分遵循:1個O的情況下不做處理,一連串O的情況需要消除最左邊的所有O,只保留最右邊的I個O。
19.一種基于觸摸屏的數字輸入編輯方法,是基于觸摸屏的數字輸入編輯組件上的輸入編輯方法,其中基于觸摸屏的數字輸入編輯組件包括數字輸出單元、數字輸入單元和功能輸入單元,數字輸出單元用于在觸摸屏的數字顯示區域中顯示用戶輸入的數字且提供對數字的編輯操作,數字輸入單元用于在觸摸屏的呈輪盤狀的數字響應區域中依序環形排列顯示O~9的數字以供用戶進行按鍵式和滑動式的操作,功能輸入單元用于在觸摸屏的功能響應區域中顯示對應的功能符號以供用戶進行操作,方法包括: 檢查用戶手勢類型,當手勢為滑動操作時進入后續的步驟; 檢測當前幀用戶輸入位置,保存上一幀用戶輸入位置,根據上一幀用戶輸入位置和當前幀用戶輸入位置的對比結果判斷滑動手勢的類型,當滑動是從數字響應區域之外滑動到數字響應區域內時進入后續的步驟; 判斷數字顯示區域內的對象槽是否處于編輯狀態,若處于編輯狀態則進行修改處理,若位于非編輯狀態則進行輸入處理。
20.根據權利要求19所述的基于觸摸屏的數字輸入編輯方法,其特征在于,當手勢為單擊操作時,進行下面的步驟: 判斷單擊位置所在區域,若為功能響應區域則執行相應的功能,若為數字響應區域則進入后續的步驟; 判斷數字顯示區域內的對象槽是否處于編輯狀態,若處于編輯狀態則進行修改處理,若位于非編輯狀態則進行輸入處理。
【文檔編號】G06F3/0484GK103914257SQ201410111928
【公開日】2014年7月9日 申請日期:2014年3月24日 優先權日:2014年3月24日
【發明者】郭亮 申請人:浦玄弦