我有两个不同的(或非-.-)UiObjects,我想比较它们。
我可以看出他们是否属于同一类,但这还不够。
我想过使用资源ID,但我找不到一种方法来访问它(我想在运行时这样做,所以ui automator viewer没有帮助......)。
所以我实际上要问两件事:
提前致谢。
修改 我的想法是:
目前,我可以通过选择FrameLayout的第一个实例(每个屏幕都为true)来访问布局树的根,从而访问其子节点(作为UiObjects)
代码示例:
//I get the first object of the current layout screen by
UiObject obj = new UiObject(new UiSelector().className("android.widget.FrameLayout").instance(0));
/*
code to get rest of the tree ...
*/
/*
code interact with a button
*/
// now I want to see if the screen changed (completely new or if a new widget appeared) or if its the same
// for that I need to know if the objects are the same
// To compare objects I need their id
我没有编写代码的原因是因为我不认为它真的增加了很多...因为重要的是我不知道该怎么做
答案 0 :(得分:0)
好吧,我想出了这么多:
总之,我想要的确实是不可能的。
答案 1 :(得分:-1)
View类具有“getId”方法,您可以使用它来比较视图。例如,如果您的类实现了OnClickListener,那么您可以检查引发事件的视图,如下所示:
public void onClick (View view) {
switch(view.getId()) {
case R.id.my_button_1:
// What to do for button 1.
break;
case R.id.my_button_2:
// What to do for button 2.
break;
default:
// Unknown view
}
}