[發明專利]一種基于安卓系統實現文字編輯中撤銷重做的方法有效
| 申請號: | 201510975296.3 | 申請日: | 2015-12-22 |
| 公開(公告)號: | CN105653121B | 公開(公告)日: | 2019-03-22 |
| 發明(設計)人: | 袁東風;馬閃閃 | 申請(專利權)人: | 山東大學 |
| 主分類號: | G06F3/0481 | 分類號: | G06F3/0481;G06F17/24 |
| 代理公司: | 濟南金迪知識產權代理有限公司 37219 | 代理人: | 顏洪嶺 |
| 地址: | 250100 山*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 系統 實現 文字 編輯 撤銷 重做 方法 | ||
1.一種基于安卓系統實現文字編輯中撤銷重做的方法,其特征在于,包括步驟如下:
(1)、通過ArrayList創建兩個堆棧,采用堆棧存儲文本編輯框中輸入的文本內容;
(2)、為文本編輯框綁定監聽器,所述監聽器為TextChangeListener、OnLongClickListener和OnClickListener;為文本編輯框綁定TextChangeListener,監聽文本編輯框內文本內容是否變化,并重寫beforeTextChanged()方法和afterTextChanged()方法來響應文本內容變更事件;為文本編輯框綁定OnLongClickListener,監聽文本編輯框長按事件,并重寫onLongClick()方法來響應長按事件,當長按文本編輯框時彈出窗口;為文本編輯框綁定OnClickListener,監聽文本編輯框點擊事件,并重寫onClick()方法來響應文本編輯框點擊事件;
(3)、設計彈出窗口的布局文件,在所述布局文件中設計包括“撤銷”按鈕和“重做”按鈕;
(4)、為“撤銷”按鈕和“重做”按鈕分別綁定OnClickListener;為“撤銷”按鈕綁定OnClickListener,監聽有無“撤銷”按鈕點擊事件,點擊“撤銷”按鈕,則在“撤銷”按鈕綁定監聽器時重寫的onClick()方法中,將undostack頂部內容轉移到redostack中;為“重做”按鈕綁定OnClickListener,監聽有無點擊“重做”按鈕,點擊“重做”按鈕,則在“重做”按鈕綁定監聽器時重寫的onClick()方法中,將redostack頂部內容轉移到undostack中;
為“撤銷”按鈕綁定OnClickListener,當監聽到點擊“撤銷”按鈕時,在“撤銷”按鈕綁定監聽器時重寫的onClick()方法中,先判斷undostack的長度是否大于0:若否,將文本編輯框內容清空,若是,先將undostack頂部內容添加到redostack頂部,再將undostack頂部內容清除,然后再一次判斷undostack此時的長度是否大于0:若否,將文本編輯框內容清空,若是,將此時undostack頂部內容顯示在文本編輯框中;
為“重做”按鈕綁定OnClickListener,當監聽到點擊“重做”按鈕時,在“重做”按鈕綁定監聽器時重寫的onClick()方法中,先判斷redostack的長度是否大于0:若否,忽略此次“重做”按鈕點擊事件;若是,將redostack頂部內容添加到undostack頂部,再將redostack頂部內容清除,然后將undostack頂部內容顯示在文本編輯框中。
2.根據權利要求1所述的基于安卓系統實現文字編輯中撤銷重做的方法,其特征在于,步驟(1)中,兩個堆棧分別是undostack和redostack。
3.根據權利要求1所述的基于安卓系統實現文字編輯中撤銷重做的方法,其特征在于,步驟(1)中,文本編輯框為原始的EditText控件或用戶自定義的繼承于EditText的子類控件。
4.根據權利要求1所述的基于安卓系統實現文字編輯中撤銷重做的方法,其特征在于,步驟(2)中,彈出窗口為PopupWindow窗口。
5.根據權利要求1所述的基于安卓系統實現文字編輯中撤銷重做的方法,其特征在于,步驟(2)中,為文本編輯框綁定TextChangeListener,監聽是否有文本內容變更事件,若否,繼續監聽;若是,在beforeTextChanged()方法中創建字符串變量bf,將變更前文本c賦給字符串變量bf,bf=c.toString();
在afterTextChanged()方法中,判斷undostack長度是否大于0:若否,將變更后文本s添加到undostack的頂部;若是,判斷變更后文本s與undostack頂部內容、字符串變量bf是否相同:若變更后文本s與undostack頂部內容相同、或變更后文本s與字符串變量bf相同,則忽略此次文本內容變更事件,若變更后文本s與undostack頂部內容、字符串變量bf均不同,則將變更后文本s添加到undostack的頂部。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于山東大學,未經山東大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510975296.3/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:顯示圖標的方法、裝置及終端
- 下一篇:一種移動終端及其實現應用查找的方法





