F
flo.ei
Neues Mitglied
- 0
Hi,
Ich habe nach dem tutorial auf tutsplus einen ViewPager integriert. Jetzt habe ich aber Das Problem, dass die XML Elemente auf den einzelnen Views zwar korrekt instantieert werden, ich jedoch keinerlei Listener darauf anwenden kann bzw. sie überhaupt referenzieren kann.
Ein Button zb. kann nicht über seinen Variablennamen.setonclicklistener angesprochen werden.
lege ich bereits in der XML androidnClick fest und definiere im Code lediglich die Methode funktioniert es einwandfrei.
Da ich aber zb. noch einen Spinner verwende ist das keine Dauerlösung da ich den Spinner nicht über xml steuern kann.
Hier ein bisschen Code zum Nachvollziehen:
der PagerAdapter:
Und hier die Implemtierung:
Bevor ich den Viewpager implementiert habe hat übrigens alles einwandfrei funktioniert.
Im Debuggmode sehe ich auch dass die buttons und spinner nicht mehr null sind.
Wäre super wenn mir jemand weiterhelfen könnte.
Gruß Flo
Ich habe nach dem tutorial auf tutsplus einen ViewPager integriert. Jetzt habe ich aber Das Problem, dass die XML Elemente auf den einzelnen Views zwar korrekt instantieert werden, ich jedoch keinerlei Listener darauf anwenden kann bzw. sie überhaupt referenzieren kann.
Ein Button zb. kann nicht über seinen Variablennamen.setonclicklistener angesprochen werden.
lege ich bereits in der XML androidnClick fest und definiere im Code lediglich die Methode funktioniert es einwandfrei.
Da ich aber zb. noch einen Spinner verwende ist das keine Dauerlösung da ich den Spinner nicht über xml steuern kann.
Hier ein bisschen Code zum Nachvollziehen:
der PagerAdapter:
Code:
class MyPagerAdapter extends PagerAdapter {
public int getCount() {
return 3;
}
public Object instantiateItem(View collection, int position) {
LayoutInflater inflater = (LayoutInflater) collection.getContext()
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
int resId = 0;
switch (position) {
case 0:
resId = R.layout.settings_view;
break;
case 1:
resId = R.layout.push_view;
break;
case 2:
resId = R.layout.listen_view;
break;
}
View view = inflater.inflate(resId, null);
((ViewPager) collection).addView(view, 0);
return view;
}
@Override
public void destroyItem(View arg0, int arg1, Object arg2) {
((ViewPager) arg0).removeView((View) arg2);
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == ((View) arg1);
}
@Override
public Parcelable saveState() {
return null;
}
public int getItemPosition(Object object) {
return POSITION_NONE;
}
}
Code:
ViewPager myPager = (ViewPager)findViewById(R.id.pager);
adapter = new MyPagerAdapter();
myPager.setAdapter(adapter);
myPager.setCurrentItem(0);
Spinner spinner = (Spinner)listenView.findViewById(R.id.Dashboard_chooser); Button push = (Button)pushview.findViewById(R.id.pushbutton);
ArrayAdapter spinnerArrayAdapter = new ArrayAdapter(getApplicationContext(),android.R.layout.simple_spinner_item, si);
spinner.setAdapter(spinnerArrayAdapter);
push.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
//do something
});
Bevor ich den Viewpager implementiert habe hat übrigens alles einwandfrei funktioniert.
Im Debuggmode sehe ich auch dass die buttons und spinner nicht mehr null sind.
Wäre super wenn mir jemand weiterhelfen könnte.
Gruß Flo