P
PhoenixRising
Neues Mitglied
- 0
Hallo leute, ich ganz neu hier und auch wenn ich gut bewandert mit Englisch bin, komme ich gerade einfach nicht mehr weiter. Ich habe eine Actvitiy in der ich Swipes mit einem TabListener eingebaut habe und einen FragmentPagerAdapter, da ich nur 4 Fragmente habe durch die hindurch geswipte werden soll.
Hier die Acitity:
Hier der FragmentPagerAdapter:
Hier das erste der 4 Fragmente, ich will mit einem TextWatcher den Titel der App ändern:
Wenn ich die Zeile e_messeName.addTextChangedListener entferne geht es wieder, ich hatte fast ads gleiche problem mit einer RadioGroup weshalb ich glaube das es mit den Callbacks zutun hat. Leider komme ich auf keine Lösung, bin auch noch nciht so erfahren mit den Swipes und Fragments, ich hatte gedacht das ich bereits exsisteirende Instanzen der Fragmente nehmen sollte damit sie nicht erst zur Laufzeit instanzieiert werden, hab in die richtung auch ein bisschen rum probiert aber ich kriege es einfach nicht gebacken.
Hier die Acitity:
Code:
public class MainActivity extends FragmentActivity {
// Elemente für die Swipes und Fragments
ActionBar actionbar;
ViewPager viewpager;
FragmentPageAdapter ft;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewpager = (ViewPager) findViewById(R.id.pager);
ft = new FragmentPageAdapter(getSupportFragmentManager());
// Swipe-Elemente
final ActionBar actionbar = getActionBar();
viewpager.setAdapter(ft);
actionbar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
ActionBar.TabListener tabListener = new ActionBar.TabListener() {
@Override
public void onTabSelected(Tab tab, FragmentTransaction ft) {
viewpager.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
@Override
public void onTabReselected(Tab tab, FragmentTransaction ft) {
// TODO Auto-generated method stub
}
};
actionbar.addTab(actionbar.newTab().setText("Messe").setTabListener(tabListener));
actionbar.addTab(actionbar.newTab().setText("Anschrift").setTabListener(tabListener));
actionbar.addTab(actionbar.newTab().setText("Brands").setTabListener(tabListener));
actionbar.addTab(actionbar.newTab().setText("Details").setTabListener(tabListener));
viewpager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
actionbar.setSelectedNavigationItem(arg0);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
}
}
}
Hier der FragmentPagerAdapter:
Code:
public class FragmentPageAdapter extends FragmentPagerAdapter {
public FragmentPageAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int arg0) {
switch (arg0) {
case 0:
return new MesseSetter();
case 1:
return new Anschrift();
case 2:
return new Brands();
case 3:
return new Details();
}
return null;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return 4;
}
}
Hier das erste der 4 Fragmente, ich will mit einem TextWatcher den Titel der App ändern:
Code:
public class MesseSetter extends Fragment {
// EditTexts
EditText e_messeName;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
final View fragLayout = inflater.inflate(R.layout.activity_main, null);
// Elemente - Deklaration
e_messeName = (EditText) fragLayout.findViewById(R.id.input_messename);
e_messeName.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
//blablabla Mr.Freeman...
//Namen Ändern
}
});
return inflater.inflate(R.layout.messesetter, container, false);
}
}
Wenn ich die Zeile e_messeName.addTextChangedListener entferne geht es wieder, ich hatte fast ads gleiche problem mit einer RadioGroup weshalb ich glaube das es mit den Callbacks zutun hat. Leider komme ich auf keine Lösung, bin auch noch nciht so erfahren mit den Swipes und Fragments, ich hatte gedacht das ich bereits exsisteirende Instanzen der Fragmente nehmen sollte damit sie nicht erst zur Laufzeit instanzieiert werden, hab in die richtung auch ein bisschen rum probiert aber ich kriege es einfach nicht gebacken.