0

我有一个带有消息的文本视图,比如说“只能点击消息的这一部分”,其中“这部分”附加了一个 clickableSpan。有没有办法我只能触摸消息中具有可点击范围的部分,以验证下一个场景。

文本视图如下所示:

[{"id"=>"message",
"enabled"=>true,
"contentDescription"=>nil,
"class"=>"com.xyz.mobile.android.view.WhitneyBookTextView",
"text"=>
 "Only this portion of the message can be clicked.",
"rect"=>{"center_y"=>934.5, "center_x"=>381.0, "height"=>67, "y"=>901, "width"=>598,"x"=>82},
"description"=>
 "com.xyz.mobile.android.view.WhitneyBookTextView{231r6178 VFED..CL ........ 42,0-640,67 #6f094a app:id/message}"}]

有什么方法可以点击吗?

touch(query("* id:'message'")) 不起作用。

4

3 回答 3

1

也许你可以使用 offset 函数,假设它仍然有效。在 iOS 的葫芦上你可以做

touch("视图标记:'First'", :offset => {:x => 50, :y => 0})

这将找到标记为“First”的视图中心,然后触摸它右侧的 50 个像素。

这会对你有帮助吗,即使它是丑陋的和硬编码的......

于 2014-09-17T17:44:19.793 回答
0

You could try touch(query("WhitneyBookTextView {text LIKE[c] '*this portion*'}")).

If that doesn't work, e.g. the tap still occurs at another spot, you could try adding an offset as Lasse has suggested.

于 2015-01-08T00:02:50.283 回答
-1

它是一个简单的问题。您可以根据其“id”或“文本”选择特定元素如果 id :消息未在其他任何地方使用,则

touch("* id:'message'")

或者

touch("android.view.WhitneyBookTextView id:'message'")

应该管用。

于 2015-09-09T05:53:37.437 回答