最新公司項目中有一個需求:點擊一個按鈕生成一個含有EditText的自定義控件item,然後點擊item中的X時刪除該item;點擊item中的EditText時可以對其中的內容進行編輯,如果編輯內容過程中清除內容時會自動刪除該item,item外層是LinearLayout。
開發過程中發現,如果編輯內容過程中清除內容導致自動刪除item時,該LinearLayout內的第一個item的EditText會搶得焦點,不論點擊什麼地方,該item都不會失去焦點。BUG
試了各種辦法,最終得到的解決辦法是:給外層的LinearLayout添加2個屬性
focusableInTouchMode="true"
focusable="true"
即讓外層的控件搶得焦點,然後完美的解決了問題。坑呀...