【问题标题】:UiAutomator Android - setText method is not working.!UiAutomator Android - setText 方法不起作用!
【发布时间】:2015-02-15 22:09:04
【问题描述】:

现在,我正在尝试使用 UIAutomator。我们创建一个应用程序。测试时,UIAutomator 的 setText 方法不起作用。单击 EditText 时,会出现键盘。然后给这个对象设置文本,但是还是不行。

这是我的 EditText 代码,

<EditText android:id="@+id/category_editText"
             style="@style/Brown.textBox"
             android:layout_width="match_parent"
             android:layout_height="33dp"
             android:contentDescription="@string/category_editText"
             android:ems="10"
             android:gravity="center_vertical"
             android:hint="@string/category_entry"
             android:lines="1"
             android:maxLength="50"
             android:paddingLeft="3dp"
             android:paddingRight="3dp"
             android:scrollHorizontally="true"
             android:singleLine="true" />

任何人,可以帮助我吗?谢谢。

【问题讨论】:

  • 这段代码在我看来不像 UiAutomator。它似乎更像是类似事物的体现。请在此处查看有关如何使用该工具的示例:developer.android.com/tools/testing/testing_ui.html
  • 是的,此代码适用于我的应用程序中的 EditText。我通过以下代码测试此 EditText。 UiObject textField = new UiObject(new UiSelector().description("category_editText")); textField.setText("Test"); 但它不起作用。
  • 问题可能是您试图在错误的视图中设置文本。最简单的解决方案是了解布局的层次视图结构并传递适当的对象。
  • 不,我得到了正确的对象。但它做不到。当我将光标设置为文本字段时,会显示光标并出现键盘。调用 setText 方法时,它不起作用。

标签: android settext android-uiautomator


【解决方案1】:

我遇到了同样的问题。我使用 legacySetText 而不是 setText 并且它有效

【讨论】:

  • 谢谢,我稍后再试试,如果我的代码没问题,我会接受你的回答。
【解决方案2】:

您是否使用 UIAutomator 检查了该字段的节点属性?您的编辑文本的 clickable 属性应设置为 true。如果它是错误的,则可能会发生此问题。我建议您检查属性并进行适当的更改以使 clickable 属性为 true。

【讨论】:

  • 谢谢,但现在,我不这样做了。当我再次这样做时,我会回复你的答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-09
相关资源
最近更新 更多