Chcę wstrzyknąć niektóre widoki z układu xml do RoboFragment, ale niestety dostaję wyjątek Nullpointer. Ponieważ RoboGuice (oprócz tego, że jest świetnym frameworkiem DI) ma bardzo mało dokumentacji, nie wiem, czy mogę użyć @ContentView(R.layout.fragmentlayout)
do adnotacji mojego RoboFragmentu. Czy jest coś, co powinienem zrobić zamiast tego? Co mogę zrobić, to obecnie:
InjectView w RoboFragment
public class TestFragment extends RoboFragment {
@InjectView(R.id.upBtn) private Button upBtn;
@Override
public View onCreateView(LayoutInflater layoutInflater,
ViewGroup container, Bundle savedInstanceState) {
super.onCreateView(layoutInflater, container, savedInstanceState);
View view = layoutInflater.inflate(R.layout.fragmentlayout, container, false);
RoboGuice.getInjector(getActivity()).injectMembers(this);
upBtn.setSelected(false); // <------ Null pointer here
return view;
}
}
Mam nadzieję, że zapoznałeś się z tymi dwoma pytaniami: http://stackoverflow.com/questions/9780769/android-roboguice-inject-views-on-fragment i http://stackoverflow.com/questions/8289660/ dowolne-proste-przykłady-używanie-roboguice-z-fragmentami-w-Androidzie –
Tak. Pierwszy z nich po prostu wskazuje, że iniekcja ma miejsce w trakcie procesu onViewCreated, ale nie znam tego w jaki sposób. W drugiej wypróbowałem także RoboGuice.getInjector (getActivity()). InjectViewMembers (this); ale to nie pomogło. –