Mở rộng về câu trả lời Marco Hertwig 's:
Bạn cần phải thêm recyclerView
đến một hoạt động do đó phương pháp bố trí của nó được gọi như mong đợi. Bạn có thể gọi chúng theo cách thủ công, (như trong câu trả lời của Elizer) nhưng bạn sẽ phải tự quản lý nhà nước. Ngoài ra, điều này sẽ không được mô phỏng một trường hợp sử dụng thực tế.
Code:
@Before
public void setup() {
ActivityController<Activity> activityController =
Robolectric.buildActivity(Activity.class); // setup a default Activity
Activity activity = activityController.get();
/*
Setup the recyclerView (create it, add the adapter, add a LayoutManager, etc.)
...
*/
// set the recyclerView object as the only view in the activity
activity.setContentView(recyclerView);
// start the activity
activityController.create().start().visible();
}
Bây giờ bạn không cần phải lo lắng về việc kêu gọi layout
và measure
mọi bạn recyclerView
được cập nhật (bằng cách thêm/gỡ bỏ các mục từ adapter
, ví dụ).
Đây là một tìm kiếm tuyệt vời. Cảm ơn vì điều đó. Tôi có thể hỏi làm thế nào bạn đã đi về việc tìm kiếm rằng xem tái chế không được đo và đặt ra? Nó sẽ thực sự hữu ích cho tôi. – c05mic
Bạn thêm biện pháp và bố cục ở đâu? sau khi findViewById tự kiểm tra? – Jeroen
Không có một nơi cụ thể để làm điều đó; Đôi khi tôi làm điều đó sau 'findViewById' nhưng tôi thường làm điều đó ngay trước khi tôi cần nó. – Eliezer