首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ViewPage中的按钮

ViewPage中的按钮
EN

Stack Overflow用户
提问于 2015-04-05 10:54:33
回答 1查看 39关注 0票数 0

谁知道我能不能在Android Studio的ViewPage上放几个按钮?

我正在尝试制作我的第一个应用程序,它需要它们可以用手指在屏幕之间移动,但这些屏幕有按钮。有人知道怎么做吗?

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2015-04-05 12:12:40

这很简单!

  1. Layout ViewPager

  1. 定义片段

公有类FirstFragment扩展Fragment { //存储实例变量私有字符串标题;私有int页面;

// newInstance构造函数,用于创建带参数的片段公共静态包newInstance(int页面,字符串标题){ FirstFragment fragmentFirst = new FirstFragment();包参数=新包();args.putInt("someInt",页面);args.putString("someTitle",标题);fragmentFirst.setArguments( args );return fragmentFirst;} //根据传入的参数存储实例变量@Override public void (包savedInstanceState) { super.onCreate(savedInstanceState);page = getArguments().getInt("someInt",0);标题= getArguments().getString("someTitle");} //根据布局XML @Override public View onCreateView(LayoutInflater inflater,ViewGroup容器,包savedInstanceState) { view View = inflater.inflate(R.layout.fragment_first,container,false);TextView tvLabel = (TextView) view.findViewById(R.id.tvLabel);tvLabel.setText(页面+“--”+标题);返回视图;}

}

  • 安装程序FragmentPagerAdapterpublic类MainActivity扩展FragmentActivity { // ...

公共静态类MyPagerAdapter扩展FragmentPagerAdapter {私有静态int NUM_ITEMS = 3;公共MyPagerAdapter(FragmentManager fragmentManager) { super(fragmentManager);} //返回总页数@Override公共int getCount() { return NUM_ITEMS;} //返回要为该页面显示的片段@Override公共片段getItem(int位置){ switch (位置){案例0: //片段#0-这将显示FirstFragment返回FirstFragment.newInstance(0,“页面# 1");案例1: //片段#0-这将显示FirstFragment不同的标题返回FirstFragment.newInstance(1,”页面# 2");案例2: //片段#1-这将显示SecondFragment return SecondFragment.newInstance(2,"Page # 3");默认值: return null;}} //返回顶部指示器的页面标题@Override CharSequence getPageTitle(int position) { return "Page“+ position;}}

}

  • 应用适配器公共类MainActivity扩展FragmentActivity { FragmentPagerAdapter adapterViewPager;

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);setContentView(R.layout.activity_home);ViewPager vpPager = (ViewPager) findViewById(R.id.vpPager);adapterViewPager = new MyPagerAdapter(getSupportFragmentManager());vpPager.setAdapter(adapterViewPager);} // ...

}

  • 安装程序OnPageChangeListener

//在活动vpPager.setOnPageChangeListener内附加页面更改监听器(new OnPageChangeListener() {

//当新页面被选中时,将调用此方法。@Override public void onPageSelected(int position) { Toast.makeText(HomeActivity.this,“所选页面位置:”+ position,Toast.LENGTH_SHORT).show();} //当滚动当前页面时将调用此方法@Override public void onPageScrolled(int position,float positionOffset,int positionOffsetPixels) { //代码转到此处} //当滚动状态更改时调用: // SCROLL_STATE_IDLE,SCROLL_STATE_DRAGGING,SCROLL_STATE_SETTLING @Override public void onPageScrollStateChanged(int状态){ //代码转到此处}

});

如果您需要更多信息,请参阅此链接(它还解释了如何使用选项卡):

https://github.com/codepath/android_guides/wiki/ViewPager-with-FragmentPagerAdapter

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29453647

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档