[英]Detect location of specific text
Appium 1.5.0
Xcode 7.3
IOS 10.11.4 OSX EI Capitan
Using on:Simulator iOS 8.1
假设我们有一个文本字段, To see more information click
此处 To see more information click
, and to get more click
To see more information click
此处 and to get more click
信息 。
因此,我使用xpath
标识了文本,然后可以获取其位置和大小。 现在我们可以以某种方式获取此处的位置。我需要单击它,但是因为它不是元素,所以无法搜索它。 因此,只要我能找到它的位置,就可以tap
它。
但是,我们如何获得它的位置并保持其通用性,以便它在不同的设备上运行?
使用Objective C的想法(我知道OP使用Appium,但他告诉我回答)是使用诸如TTTAttributedLabel之类的库并以这种方式使用它:
创建TTTAttributedLabel
( UILabel
子类),然后将文本内容放入其中,就好像它是UILabel。 将其委托设置为self。 然后,通过以下方式向单词添加链接:
NSRange rangeWord = [attributedLabel.text rangeOfString:@"here"];
[attributedLabel addLinkToURL:[NSURL URLWithString:@"anActionOnClickHere"] withRange:rangeUser];
点击单词时,它将调用此方法,您可以在其中处理点击:
- (void)attributedLabel:(__unused TTTAttributedLabel *)label
didSelectLinkWithURL:(NSURL *)url {
NSString *urlToString = [url absoluteString];
if ([urlToString containsString:@"anActionOnClickHere"]) { //perform segue for example
[self performSegueWithIdentifier:@"hereSegue" sender:self];
}
}
我绝对不了解Python,希望您能找到等效的方法。
没有任何直接方法可以实现此目的(Appium本身没有可用的API)。 但是,我的解决方案是通用的,可以在所有设备(Android和iOS),所有编程语言实现上使用。
对于图像搜索,请参考此处: 如何使用python在另一个图像中查找图像
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.