我寫了一個APP,其中有的地方涉及到自動輸入的問題,以“餓了嗎”這個APP為例。到了這個頁面,如下圖所示:

在這里,我們需要無障礙服務輸入如“麻辣燙”這個關鍵字,獲取到這個textView的id號了以后,我發現使用如下代碼無法輸入:
bundle arguments = new Bundle();
arguments.putCharSequence(AccessibilityNodeInfo.ACTION_ARGUMENT_SET_TEXT_CHARSEQUENCE,"麻辣燙");
textInfo.performAction(AccessibilityNodeInfo.ACTION_SET_TEXT, arguments);//textInfo是AccessbilityNodeInfo類
我首先想到了是否需要執行緒睡眠2s,但是失敗了;其次,我又思考這個控制元件的屬性是否可輸入,通過輸出屬性(editInfo.isEditable()),我發現這個控制元件是不可輸入的。那么問題來了,我手動是可以輸入的,為什么使用無障礙服務是不可以輸入的,我該怎么樣才能實作使用無障礙服務輸入這個值。
uj5u.com熱心網友回復:
有沒有大佬會的啊,最近才學android的,會的東西還很少,實在是不知道這個控制元件是不是也有什么彎彎繞繞的,怎么手動可以輸入,無障礙服務就不能輸入呢?屬性上明明寫不可編輯,為什么手動就可以輸入呢?轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/18820.html
標籤:Android
上一篇:Android studio
下一篇:畢業設計
