Pra*_*ina 5 android automated-tests android-espresso
我从 LoginActivity 开始,登录后,我的应用程序使用 RecyclerView 转到下一个 Activity。我需要参考 Recycler View。我正在这样做,但得到null。
RecyclerView recyclerView = (RecyclerView) loginActivity.getActivity().findViewById(R.id.messages_list);
Run Code Online (Sandbox Code Playgroud)
它为空,因为 loginActivity 不包含 RecyclerView。所以,我的问题是,一旦我转到第二个活动,我该如何告诉 espresso 用新活动替换 loginActivity 以便我可以做到这一点
RecyclerView recyclerView = (RecyclerView) currentActivity.getActivity().findViewById(R.id.messages_list);
Run Code Online (Sandbox Code Playgroud)
如果这是不可能的,还有什么其他方法?
Activity currentActivity;
public Activity getActivityInstance() {
getInstrumentation().runOnMainSync(new Runnable() {
public void run() {
Collection resumedActivities = ActivityLifecycleMonitorRegistry.getInstance().getActivitiesInStage(Stage.RESUMED);
if (resumedActivities.iterator().hasNext()) {
currentActivity = (Activity) resumedActivities.iterator().next();
}
}
});
return currentActivity;
}
RecyclerView recyclerView = (RecyclerView) getActivityInstance().findViewById(R.id.messages_list);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
358 次 |
| 最近记录: |