1、ViewPager的使用

来源:互联网 发布:office mac 卡死退出 编辑:程序博客网 时间:2024/06/12 19:39
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">在java代码中定义了ViewPagerAdcAdapter.java作为适配器</span>
public class ViewPagerAdvAdapter extends PagerAdapter{private Context context;private List<ImageView> data;public ViewPagerAdvAdapter(Context context,List<ImageView> data) {super();this.context = context;this.data = data;}//获取当前窗体的界面数@Overridepublic int getCount() {return data.size();}//判断是否由对象生成界面@Overridepublic boolean isViewFromObject(View arg0, Object arg1) {return arg0 == arg1;}//从ViewGroup中移出当前View@Overridepublic void destroyItem(ViewGroup container, int position, Object object) {container.removeView(data.get(position));}//return一个对象,这个对象表明了PagerAdapter适配器选择哪个对象放在当前的ViewPager中@Overridepublic Object instantiateItem(ViewGroup container, int position) {container.addView(data.get(position));return data.get(position);}}


在java代码中定义HomeFragment.java类让显示的广告内容能够通过触屏进行左右滑动

public class HomeFragment extends Fragment {private View rootView;private ViewPager viewPagerAdv;private List<ImageView> advIvs;// 数据源private PagerAdapter advAdapter;// 适配器@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {if (null == rootView) {rootView = inflater.inflate(R.layout.fragment_home, container,false);initView(rootView);}ViewGroup parent = (ViewGroup) rootView.getParent();if (null != parent) {parent.removeView(rootView);}return rootView;}private void initView(View rootView) {// 初始化ViewPagerviewPagerAdv = (ViewPager) rootView.findViewById(R.id.home_viewpager_adv);// 构造ViewPager数据源advIvs = new ArrayList<ImageView>();ImageView iv1 = new ImageView(getActivity());iv1.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));iv1.setImageResource(R.drawable.home_adv_1);advIvs.add(iv1);ImageView iv2 = new ImageView(getActivity());iv2.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));iv2.setImageResource(R.drawable.home_adv_2);advIvs.add(iv2);ImageView iv3 = new ImageView(getActivity());iv3.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));iv3.setImageResource(R.drawable.home_adv_3);advIvs.add(iv3);// 初始化适配器对象ViewPager的适配器advAdapter = new ViewPagerAdvAdapter(getActivity(), advIvs);// ViewPager加载适配器viewPagerAdv.setAdapter(advAdapter);// ViewPager的监听}}


0 0
原创粉丝点击