如何清除文本编辑字段? android python appium

时间:2015-05-06 14:13:40

标签: android python appium

如何清除文字编辑字段? android python appium? 我试过这样的方式:

  el = driver.find_element_by_id('text edit field id').clear()
  el.click()
  el.clear()
但是,它实际上只删除了一个符号。

我想可以通过调用el.click()两次并发送键码来删除突出显示的文本区域但是如何突出显示文本?

有趣的是,这样的问题在Sony Xperia z3 compact,android 5.0.1中重现。 在lg,nexus android 4.4,5.1中,上面的代码运行良好

1 个答案:

答案 0 :(得分:2)

我遇到了与我的Android应用程序相同的问题,但我在java中进行自动化,所以对于我正在执行的解决方案,在元素的位置附近点击两次动作,这样它将选择已经在文本字段中写入的所有文本之后,单击该“剪切”符号,以便清除文本字段。 我在android设备上为sendkeys写了一个方法。

     public void typeForAndroid(AppiumDriver appiumDriver,WebElement ele,String text)
{
    if(ele.getText().isEmpty())
    {
        ele.sendKeys(text);
    }
    else
    {
    TouchAction action=new TouchAction(appiumDriver);
    action.tap(ele.getLocation().getX()+5, ele.getLocation().getY()+5);
    action.tap(ele.getLocation().getX()+5, ele.getLocation().getY()+5);

    appiumDriver.performTouchAction(action);
    pause(2);
    try{
        appiumDriver.findElementById("android:id/cut").click();
     }
     catch(Exception e)
     {
         appiumDriver.sendKeyEvent(67);
     }

      pause(2);
    ele.sendKeys(text);
    }
}

这对我有用。我希望这对你有用。 在这我用过appiumdriver但你也可以使用androiddriver。 感谢