1. 程式人生 > >解決EditText多行編輯時在ScrollView中無法滾動的問題

解決EditText多行編輯時在ScrollView中無法滾動的問題

這是一件很鬱悶的事,一個傻x給我找事,說我做的應用不好用,以為自己是傻逼產品經理嗎?管的事真不少。各種問題,各種向老大反應,連伺服器的端的問題都來找我,以為我是救世主啊,吐槽完了轉入正題。

鑑於以前解決ListView,GridView以及ViewPager在ScrollView滾動問題的解決經驗,我通過extends EditText來重寫它的onTouchEvent方法來解決這個問題。

首先要顯示多行編輯文字,先在.xml檔案中配EditText的下面幾個屬性:

android:enabled="true"
android:gravity="top"
android:
minLines="5" android:maxLines="10" android:scrollbars="vertical".

然後自定EditText:

public class MyEditText extends EditText {

    public MyEditText(Context context, AttributeSet attrs, int defStyleAttr) {
        super(context, attrs, defStyleAttr);
    }

    public MyEditText(Context context, AttributeSet attrs) {
        super
(context, attrs); } public MyEditText(Context context) { super(context); } @Override public boolean onTouchEvent(MotionEvent evt) { switch (evt.getAction()) { case MotionEvent.ACTION_MOVE: // 通知其父控制元件,現在進行的是本控制元件的操作,不允許攔截 getParent().requestDisallowInterceptTouchEvent(true
); break; } return super.onTouchEvent(evt); } }

使用的時候只要把系統的EditText控制元件換成帶完整包路徑的MyEditText即可,例如:com.xxx.xxx.ui.view.edittext.MyEditText

大功告成,下班吃飯。

相關推薦

解決EditText編輯ScrollView無法滾動的問題

這是一件很鬱悶的事,一個傻x給我找事,說我做的應用不好用,以為自己是傻逼產品經理嗎?管的事真不少。各種問題,各種向老大反應,連伺服器的端的問題都來找我,以為我是救世主啊,吐槽完了轉入正題。

ScrollView與ListView合用(TextView顯示計算不正確)的問題解決

最近測試的時候發現在使用SrollView 中使用兩個listView,如果使用特大字型的話,比較長的LISTVIEW多行顯示會有問題。在網上搜索了一下,大概有兩種解決方案,一種是重寫ListView的onMeasure方法,一種是重寫TextView的onMeasure方

嘗試解決Java字串的編輯問題

很多時候,我們都需要在程式碼中書寫大段或者需要轉義的字串,常見的情形有: SQL, 正則表示式, XML/HTML, 引用一大段文字 等等.       不幸的是, 到目前為止, Java都沒有

c/c++的換符“\” 巨集定義\字串 書寫

巨集定義有無引數巨集定義和帶引數巨集定義兩種。  無引數的巨集定義的一般形式為# define 識別符號 字元序列 其中# define之後的識別符號稱為巨集定義名(簡稱巨集名),要求巨集名與字元序列之間用空格符分隔。這種巨集定義要求編譯預處理程式將源程式中隨後所有的定名的出現(註釋與字串常量中的除外)均用

ThreadLocal解決SimpleDateFormat線程安全問題遇到的困惑

檢查 initial hashcode n) lan ext 線程安全 args [] 測試代碼: public class Main { public static void main(String[] args) { for (int

解決TextView滑動與NestedScrollView等,滑動沖突,我的解決方案

rip max 解決 底部 e-mail ast sts end 謝謝 1.首先要明白,什麽時候回TextView處理滑動,什麽時候不處理滑動 1.1往上滑動,到達文本底部就不要再處理了,如果往上滑動不在底部則繼續TextView滑動 1.2往下滑動,到達文本頂部就不要再處

解決JsonArray.toList轉換List,串的時間欄位變為當前時間的問題

當前問題: 最近在處理一個Bug時發現從資料庫中取出的時間,到頁面後全部變為了當前時間.跟程式走完後發現,在服務中取出庫中內容後,服務用 String result = JSON.toJSONString(list); 將list變為串傳到前端頁面,這時時間格式

通過後臺SQL獲取分頁資料,在使用VUE-Element-Table 表格選擇資料,怎樣在

在專案中,分頁是由後臺SQL獲取。在table表格多選時,容易把選中的值傳給後臺,但是怎樣在返回上一頁時怎樣記住表格多選的資料?? 當返回第二頁時,應該把第一條資料再選中,保持選擇狀態。 具體思路:在頁面不重新重新整理載入時,使用二維陣列儲存el-table表格多選結果。其中一維

提高visual studio使用逼格的連體字 Fira code 以及編輯 MixEdit

                     今天裝逼再升級,介紹一下VS中的多行編輯以及連字型。clone後,找到ttf資料夾,然後安裝該資料夾中的字型檔案。一定要記得重新啟動vs~~~~~~~然後進入VS,選擇TOOLS->Options->Fonts and Colors,選擇Fira code

Sublime 編輯快捷鍵

滑鼠選中多行,按下 Ctrl Shift L (Command Shift L) 即可同時編輯這些行;滑鼠選中文字,反覆按 CTRL D (Command D) 即可繼續向下同時選中下一個相同的文字進行同時編輯;滑鼠選中文字,按下&nb

巨集定義\字串 書寫

巨集定義有無引數巨集定義和帶引數巨集定義兩種。  無引數的巨集定義的一般形式為# define 識別符號 字元序列 其中# define之後的識別符號稱為巨集定義名(簡稱巨集名),要求巨集名與字元序列之間用空格符分隔。這種巨集定義要求編譯預處理程式將源程式中隨後所有的定名的出現(註釋與字串常量中的除外)均用字

解決TextView滑動與NestedScrollView等,滑動衝突,我的解決方案

1.首先要明白,什麼時候回TextView處理滑動,什麼時候不處理滑動 1.1往上滑動,到達文字底部就不要再處理了,如果往上滑動不在底部則繼續TextView滑動 1.2往下滑動,到達文字頂部就不要再處理了,如果往下滑動不在頂部則繼續TextView滑動 關鍵計算地方:   

Android 動態生成 radiobutton 解決 radiogroup 顯示的問題 單選

專案有需求,然後看了下網上的方法,好多都太麻煩了,而且也不怎麼靠譜。。先上效果圖 先上佈局的程式碼 <RadioGroup android:id="@+i

IN,NOT IN,ANY和ALL用於比較子查詢返回資料你不知道的陷阱

本文簡單講述一下在使用IN,NOT IN,ANY,ALL等對從子查詢中返回的資料做比較的時候一不小心就會犯的錯誤. 測試的的資料如下:TEST表中有3條資料,其中id為3的行name的值為null. ID Name 1 name1 2 name2 3 1,IN在子查

如何刪除首字母,Sublime Text編輯運用

一、問題描述: 題主的問題是程式碼中每行都有序號,這些序號一行一行地刪太麻煩,如何進行批量刪除?    我們在進行程式碼重用的時候時常會出現行號同時被複制的情況, 比如下面的這點程式碼: 15

Easyui datagrid 編輯

// 初始化資料列表 function initDatagrid() { $('#dg').datagrid({ loadMsg: '資料載入中請稍後……', striped: true,

android EditText顯示並且支援imeOptions設定

android EditText 單行顯示並且設定imeOptions很簡單,條件是在xml中將singleLine設定為true, 將inputType設定為text,多行顯示預設是不能設定,預設是回車鍵,在網上查了好久,發現一個解決方法,記錄一下: XML

筆記——android EditText顯示並且支援imeOptions

最近用到EditText的imeOptions的屬性,然後條件是在xml中將singleLine設定成true,或者將inputType設定成text,多行顯示預設是不支援imeOptions的屬性,最後在網上查到了下面的方法(原文連結)。即 xml an

你可能不知道的 Android Studio 小技巧之「編輯

Android Studio 大家應該都很熟悉了,但是可能很多人都僅限基本的功能使用,而 Android Studio 非常強大,有很多非常實用卻又鮮為人知的小技巧,熟練掌握這些小技巧將能極大的提高你的工作效率,今天就來給大家介紹一個很實用的小技巧「多行編輯」。

解決SpringBoot模組釋出99%的問題?SpringBoot釋出的8個原則和4個問題的解決方案

如果使用的是 SpringBoot 多模組的專案,在釋出的時候可能遇到各種各樣的問題。本文歸納了以下 8 個原則和釋出時經常出現的 4 個問題的解決方案,掌握了這些原則和解決方案,幾乎可以解決絕大數 SpringBoot 釋出問題。 SpringBoot 多模組釋出的 8 大原則 1 在釋出模組打包,