У меня есть ViewPager с тремя вкладками. Один из вкладок (на самом деле фрагменты) содержит EditText
.Android ViewPager и EditText
Вот проблема: когда я прокручиваю этот фрагмент (когда он находится в фокусе), я хочу показать клавиатуру, и когда я перейду к следующей вкладке, я хочу скрыть клавиатуру. Проблема в том, что в ViewPager
фрагмент уничтожается только после того, как я провёл третий фрагмент, что означает, что клавиатура остается открытой, когда фрагмент без EditText
находится в фокусе. И еще одна проблема заключается в том, что когда я прокручиваю от третьего фрагмента до второго (что, повторяю, не имеет управления EditText
), потому что ViewPager
создает два фрагмента в строке. Надеюсь, что я достаточно ясен, если не попытаюсь это объяснить. Есть ли способ создать фрагмент в ViewPager
только тогда, когда он сосредоточится и сохранит свое состояние, когда сосредоточится? Спасибо ...
EDIT
Вот мой адаптер:
public class TabPagerAdapter extends FragmentPagerAdapter {
private List<Fragment> fragments;
public TabPagerAdapter(FragmentManager fm, List<Fragment> fragments) {
super(fm);
this.fragments = fragments;
}
@Override
public Fragment getItem(int position) {
return this.fragments.get(position);
}
@Override
public void setPrimaryItem(ViewGroup container, int position, Object object) {
super.setPrimaryItem(container, position, object);
fragments.get(position);
}
@Override
public int getCount() {
return this.fragments.size();
}
}
Возможный дубликат [Закрытие клавиатуры в ViewPager] (http://stackoverflow.com/questions/14600104/closing- keyboard-in-viewpager) – DoubleK