6
시험 수업을보기 위해 Butterknife를 사용할 수 있습니까? 뷰는 MainActivity 클래스에 의해 생성되고 커밋 된 프래그먼트로 주입됩니다. 나는 내 조각의 견해를 주입하는 Butterknife를 사용하지만Butterknife를 사용하여 에스프레소에서 뷰를 삽입 할 수 있습니까?
public class MainActivityTest extends ActivityInstrumentationTestCase2<MainActivity> {
private MainActivity mMainActivity;
private Button learnButton;
private Button teachButton;
@SuppressWarnings("deprecation")
public MainActivityTest() {
super("com.example.application.app", MainActivity.class);
}
protected void setUp() throws Exception {
super.setUp();
mMainActivity = getActivity();
learnButton = (Button) mMainActivity.findViewById(R.id.buttonLearn);
teachButton = (Button) mMainActivity.findViewById(R.id.buttonTeach);
}
:
public class ChooseActionFragment extends Fragment {
@InjectView(R.id.buttonTeach) Button buttonTeach;
@InjectView(R.id.buttonLearn) Button buttonLearn;
public ChooseActionFragment() { }
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container, false);
ButterKnife.inject(this, rootView);
return view;
}
내가 원하는
난에 Butterknife을 사용할 수있는 방법을 알고 여기에
내 테스트 클래스의 코드입니다 내 프로덕션 코드에서했던 것처럼 내 테스트에서 내 상용구보기 코드를 줄이십시오.
이 나를 위해 작동하지 않습니다. 보기에 액세스하려고 할 때마다 NPE가 표시됩니다. 나는'ButterKnife.inject (this, activity);와'ButterKnife.inject (this, fragment.getView())'를 시도했다. – psyren89