2014-12-09 4 views
1

Я новый пчела для uiautomator, и когда я пытаюсь очистить текст текстового поля с помощью clearTextField(), его совсем не очистить. Может кто-нибудь подскажет мне, как я могу это сделать.clearTextField() не работает в UIAutomator

пытался таким образом также

while(!"".equals(obj.getText()) obj.clearTextField();

Спасибо заранее.

+0

метод obj.clearTextField() очищает текстовое поле, когда «SelectAll ». если опция «selectall» скрывается вверху, невозможно очистить текстовое поле. Может кто-нибудь помочь мне, как я могу очистить все текстовое поле сразу. –

+0

Я не знаю о clearTextField(), но вы можете попробовать просто отредактировать текст в "" –

ответ

0

Вы можете попробовать следующий код:

String text = obj.getText(); 
obj.clickBottomRight(); 
for (int i=0;i<text.length();i++) { 
    UiDevice.getInstance().pressDelete(); 
} 
obj.setText("some-text"); 
1

По соображениям безопасности, мы не можем получить текст из пароля EditText. Unfortunally clearTextField() не работает на API 18 так:

obj.getText() = "" 
obj.getText().lenght() = 0 

мое решение, не очень я знаю прекрасной, это:

private static void clearText(UiDevice uiDevice, UiObject textBox) throws UiObjectNotFoundException { 
    int estimatedLength = 30; 
    textBox.clickBottomRight(); 
    for (int i = 0; i < estimatedLength; i++) { 
     uiDevice.pressDelete(); 
    } 
}