android UiAutomator定位失灵的一种解决办法
2017-06-09 09:45
761 查看
本人在学习使用UiAutomator的时候,遇到了一个控件经常性无法定位的问题,有的时候能定位点击,有的时候就找不到这个控件,同样的代码,时灵时不灵,最近没办法找到了一个相对还不错的解决方案。下面发一下截图,就是左下角的“发送”按钮,有的在输入文字之前是另外一个“+”的控件,有点类似与微信聊天框里面的界面。
思路就是通过两种方式定位不到的话,就通过文本框,计算“发送”按钮的位置,通过坐标点击。
下面是我的代码:
思路就是通过两种方式定位不到的话,就通过文本框,计算“发送”按钮的位置,通过坐标点击。
下面是我的代码:
//发送测试文本 public void sendTesttext(String text) throws UiObjectNotFoundException { writeText(text); if (getUiObjectByResourceId("com.gaotu100.superclassteacher:id/btn_send").exists()) {//通过resourceid定位 waitForResourceIdAndClick("com.gaotu100.superclassteacher:id/btn_send"); } else if (getUiObjectByText("发送").exists()) {//通过text定位 waitForTextAndClick("发送"); }else { Rect ss = getUiObjectByResourceId("com.gaotu100.superclassteacher:id/et_sendmessage").getVisibleBounds();//定位文本框 int y = ss.centerY();//计算y坐标 int x = ss.right + 60;//计算x坐标 clickPiont(x, y);//点击坐标点 } }
相关文章推荐
- android 百度地图使用tabhost 无法定位,解决办法
- android手机定位慢解决办法
- eclipse安装ADT插件重启后不显示Android SDK Manager和Android Virtual Device Manager图标的一种解决办法
- Android 发送get请求 URL中文参数显示问号的一种解决办法
- eclipse安装ADT插件重启后不显示Android SDK Manager和Android Virtual Device Manager图标的一种解决办法
- appium 自动化:Android版本7.0以上定位不到元素,解决办法
- Android 百度地图可以定位,但无法显示地图 的解决办法
- 安卓添加外部Library报NoClassDefFoundError异常,无法生成Android Dependencies目录,一种简单解决办法
- eclipse安装ADT插件重启后不显示Android SDK Manager和Android Virtual Device Manager图标的一种解决办法
- Android 关于Edittext输入框光标焦点无法及时定位解决办法.
- Android:Activity之间跳转时停止运行的一种解决办法
- android UiAutomator在清除文本时遇到中文的解决办法
- #Android笔记#android无法使用scrollTo定位的解决办法。
- eclipse安装ADT插件重启后不显示Android SDK Manager和Android Virtual Device Manager图标的一种解决办法
- android No resource found that matches the given name attr的一种解决办法
- as定位apply plugin: 'com.github.dcendents.android-maven'问题解决办法
- eclipse安装ADT插件重启后不显示Android SDK Manager和Android Virtual Device Manager图标的一种解决办法
- Android开机键失灵启动手机的解决办法
- Android 安装app显示已经安装 需要卸载,实际没有安装的一种解决办法
- Android—使用Activitygroup或者TabActivity中包含其它的activity无法定位的解决办法