Пожалуйста, смотрите приложение Contacts + в магазине, чтобы узнать, что я имею в виду. У вас есть три списка, каждый из которых имеет ширину экрана. Затем вы можете прокручивать каждый, используя HorizontalScrollView. Каков наилучший способ сделать это?Android - Несколько ListView внутри HorizontalScrollView
0
A
ответ
2
Вы можете использовать viewpager с тремя фрагментами в качестве вкладок, используя адаптер табуляции, подобный этому.
Принимающей активность:
public class PageViewActivity extends FragmentActivity {
MyPageAdapter pageAdapter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_page_view);
List<Fragment> fragments = getFragments();
pageAdapter = new MyPageAdapter(getSupportFragmentManager(), fragments);
ViewPager pager =
(ViewPager)findViewById(R.id.viewpager);
pager.setAdapter(pageAdapter);
}
}
Адаптер фрагмент
class MyPageAdapter extends FragmentPagerAdapter {
private List<Fragment> fragments;
public MyPageAdapter(FragmentManager fm, List<Fragment> fragments) {
super(fm);
this.fragments = fragments;
}
@Override
public Fragment getItem(int position) {
return this.fragments.get(position);
}
@Override
public int getCount() {
return this.fragments.size();
}
}
Способ получить фрагменты (опционально, зависит от того, как вы хотели бы использование быть)
private List<Fragment> getFragments(){
List<Fragment> fList = new ArrayList<Fragment>();
fList.add(MyFragment.newInstance("Fragment 1"));
fList.add(MyFragment.newInstance("Fragment 2"));
fList.add(MyFragment.newInstance("Fragment 3"));
return fList;
И ваш фрагмент класс
public class MyFragment extends Fragment {
public static final String EXTRA_MESSAGE = "EXTRA_MESSAGE";
public static final MyFragment newInstance(String message)
{
MyFragment f = new MyFragment();
Bundle bdl = new Bundle(1);
bdl.putString(EXTRA_MESSAGE, message);
f.setArguments(bdl);
return f;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
String message = getArguments().getString(EXTRA_MESSAGE);
View v = inflater.inflate(R.layout.myfragment_layout, container, false);
TextView messageTextView = (TextView)v.findViewById(R.id.textView);
messageTextView.setText(message);
return v;
}
}
Пожалуйста, не стесняйтесь возвращаться ко мне, если вам нужна дополнительная помощь.
Смежные вопросы
- 1. Android HorizontalScrollView внутри ListView scrollTo
- 2. RecyclerView внутри HorizontalScrollView Android
- 3. ListView в HorizontalScrollView и HorizontalScrollView в ScrollView
- 4. Уплотненный прокрутки не работает (HorizontalScrollView внутри HorizontalScrollView)
- 5. HorizontalScrollView в элементах ListView
- 6. MPAndroidChart внутри HorizontalScrollView
- 7. Android - Linearlayout внутри horizontalscrollview не работает
- 8. ImageView не отображается внутри HorizontalScrollView в android
- 9. Android HorizontalScrollView snap
- 10. HorizontalScrollView с ListView - ошибка документации?
- 11. horizontalscrollview внутри viewpager
- 12. Настройка кнопок внутри HorizontalScrollView
- 13. HorizontalScrollView внутри Movable View
- 14. Действия HorizontalScrollView внутри ViewPager
- 15. Элементы ListView, которые нельзя кликнуть с помощью HorizontalScrollView внутри
- 16. Android HorizontalScrollView get width
- 17. Android HorizontalScrollView прокрутить страницу
- 18. Горизонтальная прокрутка внутри элемента ListView?
- 19. Android: Autoscrolling HorizontalScrollView
- 20. HorizontalScrollView рассматривает только первый ребенок вложенной ListView
- 21. ListView в HorizontalScrollView не будет горизонтальным?
- 22. ListView with horizontalScrollView OnItemClick не работает
- 23. Android: HorizontalScrollView в ListView строки элемента, фокус проблемы
- 24. Android - прядильники внутри ListView
- 25. Android EditText внутри ListView
- 26. Android - ClickListener внутри ListView?
- 27. Android ListView внутри фрагмента
- 28. Android EditText внутри ListView?
- 29. Элементы внутри ListView - android
- 30. Android ListView внутри ScrollView
Используйте viewpager и три фрагмента, имеющие списки в них. –
Пожалуйста, добавьте свой комментарий в качестве ответа, чтобы я мог его выбрать :) Спасибо. –
Я добавил ответ, вы должны отметить его. –