fragment+viewpager在Android中的实现
来源:爱站网时间:2020-09-01编辑:网友分享
每个页面和活动的布局可以组合成一个单独的页面,每个页面可以包含一个单独的页面,爱站技术频道小编下面给大家分享fragment+viewpager在Android中的实现,希望对你有所帮助。
每个页面和活动的布局可以组合成一个单独的页面,每个页面可以包含一个单独的页面,爱站技术频道小编下面给大家分享fragment+viewpager在Android中的实现,希望对你有所帮助。
1.先布局实现mian.xml
2.创建3个fragment 要继承Fragment类v4包下的
public class FragmentThree extends Fragment { @Nullable @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { //引入布局文件 View view = inflater.inflate(R.layout.fragmentthree, null); return view; } }
3.创建fragment 相对应的布局文件
4.创建适配器继承FragmentPagerAdapter
package com.bwei.fragment; import android.content.Context; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.app.FragmentPagerAdapter; import java.util.List; public class MyAdapter extends FragmentPagerAdapter { private Listfragments; private Context context; //构造方法 public MyAdapter(FragmentManager fm, List fragments, Context context) { super(fm); this.fragments = fragments; this.context = context; } //得到item条目 @Override public Fragment getItem(int position) { return fragments.get(position); } //得到数量 @Override public int getCount() { return fragments.size(); } }
5.在mainActivity实现效果
package com.bwei.fragment; import android.graphics.Color; import android.os.Bundle; import android.support.annotation.IdRes; import android.support.v4.app.Fragment; import android.support.v4.app.FragmentManager; import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.Toast; import java.util.ArrayList; import java.util.List; public class MainActivity extends AppCompatActivity implements RadioGroup.OnCheckedChangeListener,ViewPager.OnPageChangeListener { private ViewPager vPager; private Listfragments; private FragmentManager fm; private RadioGroup mRadioGroup; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //初始化控件 initView(); initDate(); } private void initView() { vPager=(ViewPager) findViewById(R.id.pager); vPager.setOnPageChangeListener(this); mRadioGroup=(RadioGroup) findViewById(R.id.radioGroup1); mRadioGroup.setOnCheckedChangeListener(this); } private void initDate() { fragments=new ArrayList (); //实例化Fragment FragmentOne fragmentOne = new FragmentOne(); FragmentTwo fragmentTwo = new FragmentTwo(); FragmentThree fragmentThree = new FragmentThree(); //添加到集合 fragments.add(fragmentOne); fragments.add(fragmentTwo); fragments.add(fragmentThree); //得到getSupportFragmentManager()的管理器 fm = getSupportFragmentManager(); //得到适配器 MyAdapter myAdapter = new MyAdapter(fm, fragments, this); //设置适配器 vPager.setAdapter(myAdapter); } //ViewPager.OnPageChangeListener监听事件 @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { } @Override public void onPageSelected(int position) { for (int i = 0; i
6.最后的效果图
以上就是爱站技术频道小编对fragment+viewpager在Android中的实现介绍,其实人只要保持一份本心,坚持不懈的学习,才能提高自身的价值。