Anroid的uiautomator实现控件长按的效果

原创 2016年08月30日 15:50:49

经过测试,UiObject的longClick无法实现在android.widget.TextView长按的效果。经过查找资料与实际测试,发现原地swipe可以用来模拟长按,代码如下:

	private boolean LongPress(final MatchSelectUI stMatchSelectUI,int nSeconds)
	{
		boolean bRet = false;
		UiObject stUiObject = new UiObject(stMatchSelectUI.CreateUISelector());
		bRet = stUiObject.exists();
		if(true == bRet)
		{
			bRet = false;
			try 
			{
				//longClick无法实现长按
				//bRet = stUiObject.longClick();
				Rect stRect = stUiObject.getVisibleBounds();
				int nPressX = stRect.centerX();
				int nPressY = stRect.centerY();
				
				//100对应着0.5秒
				int nSecondsSteps = 200;
				int nSteps = nSecondsSteps * nSeconds;
				getUiDevice().swipe(nPressX, nPressY, nPressX, nPressY,nSteps);
				bRet = true;
			}
			catch (UiObjectNotFoundException e) 
			{
				// TODO Auto-generated catch block
				DDMSPrint("UiObject.LongPress() 事件 出现异常 UiObjectNotFoundException");
			}
		}

		return bRet;
	}



Uiautomator模拟系统物理按键长按操作

最近想模拟长按power键,或者音量键+power键,做一些截图,关机重启的操作。 怎奈在开发文档中找遍UiAutormator的API也没找到一个长按的操作,更不要说同时长按了。 于是在论坛上找...
  • u012897401
  • u012897401
  • 2016年11月24日 12:38
  • 1818

android UiAutomator长按实现控制按住控件时间的方法

本人在使用UiAutomator做测试的时候,遇到一些控件需要长按一会儿,比如录音功能,需要按住几秒,官方api不太好用,所以自己写了一个长按的方法。分享如下,供大家参考。 public void...
  • Fhaohaizi
  • Fhaohaizi
  • 2017年07月19日 19:12
  • 675

uiAutomator测试框架,深入pinchOut() pinchIn()

pinchOut() 和pinchIn() 方法有俩个需传入的参数int percent, int steps percent即从1到100的整数,percent值越大,滑动的范围就越大。通过这个值的...
  • hnulwt
  • hnulwt
  • 2014年01月03日 10:03
  • 2940

UiAutomator笔记之UiDevice API(二)

一、UiDevice类简介 1、UiDevice代表设备状态。如屏幕的大小、旋转方向、按压各种按键等。 2、UiDevice为单例模式,可有2种方式获取其实例。 (1)UiDevice.get...
  • yiwaChen
  • yiwaChen
  • 2016年09月17日 22:41
  • 2515

uiautomator模拟长按物理按键

手机测试行业自动化测试中,需要模拟长按操作,但是很多同学只知道长按屏幕界面,但是对于长按物理键(如电源键、音量键、菜单键、home键、返回键、还有其他公司手机自己自定义的键)不知道如何实现,uiaut...
  • bbs11007
  • bbs11007
  • 2017年10月25日 08:36
  • 346

Android用代码模拟系统物理按键长按操作(类似按键精灵)

今天同事的朋友提出一个需求,问能不能帮忙写个程序模拟他手机上长按返回键的操作。因为他手机屏幕部分区域失灵,想启用单手模式来使用手机,但是物理触控按键也失灵了。无法通过长按返回触发单手模式。由于之前没做...
  • u012912435
  • u012912435
  • 2016年05月23日 17:27
  • 8596

Uiautomator中longClick方法时间长度无法调节的解决办法

很早就想分享此问题的解决办法,但总是找不到时间 在Uiautomator测试初期实施中,会遇到方法无法满足的情况,比如较常用的LongClick方法,此方式不太清楚到底多长(看到网上过说...
  • pyn815093235
  • pyn815093235
  • 2015年05月21日 18:41
  • 2062

RecyclerView点击事件与长按事件,并添加点击效果

在网上找了一下实现方法,有的说在adapter里添加回调接口来实现点击事件与长按事件。  不过经过测试,有时候会产生这样的现象:点击item跳转到下一个页面,再返回回来时,  item的点击事件会失效...
  • gaobaoshen1
  • gaobaoshen1
  • 2016年06月14日 16:00
  • 2484

UIAutomator定位Android控件的方法实践和建议(Appium姊妹篇)

在本人之前的一篇文章Appium基于安卓的各种FindElement的控件定位方法实践和建议>>第二章节谈到Appium可以通过使用UIAutomator的方法去定位Android界面上的控件,当时只...
  • zhubaitian
  • zhubaitian
  • 2014年10月04日 10:07
  • 17038

为网上流行论点“UIAutomator不能通过中文文本查找控件”正名

1. 问题描述和起因 相信大家学习UIAutomator一开始的时候必然会看过一下这篇文章。 Android自动化测试(UiAutomator)简要介绍 因为你在百度输入UIAutomator搜...
  • zhubaitian
  • zhubaitian
  • 2014年10月01日 14:31
  • 5723
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Anroid的uiautomator实现控件长按的效果
举报原因:
原因补充:

(最多只允许输入30个字)