为了账号安全,请及时绑定邮箱和手机立即绑定

2018-02-05 学习日记 第一篇

标签:
Android

主要为了记录自己的学习成果,复盘学习的内容,免得第二天自己写了什么都忘了。

今天主要做了一个ViewPager的demo,写了一个适配器。

public class ImagePagerAdapter extends PagerAdapter {

    private Context mContent;
    private ArrayList<ImageView> mViewList=new ArrayList<ImageView>();
    private ArrayList<GoodsInfo> mGoodsList=new ArrayList<GoodsInfo>();

    public ImagePagerAdapter(Context mContent, ArrayList<GoodsInfo> mGoodsList) {
        this.mContent = mContent;
        this.mGoodsList = mGoodsList;

        for(int i=0;i<mGoodsList.size();i++){
            ImageView view=new ImageView(mContent);
            view.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT));
            view.setImageResource(mGoodsList.get(i).pic);
            view.setScaleType(ImageView.ScaleType.FIT_CENTER);
            mViewList.add(view);
        }
    }

    @Override
    public int getCount() {
        return mViewList.size();
    }

    @Override
    public boolean isViewFromObject(View view, Object object) {
        return view==object;
    }

    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        container.removeView(mViewList.get(position));
    }

    @Override
    public Object instantiateItem(ViewGroup container, int position) {
         container.addView(mViewList.get(position));

         return mViewList.get(position);
    }
}


1,主要注意setLayoutParams的写法。
在Activity下加载,写一个监听事件。
public class MainActivity extends AppCompatActivity implements ViewPager.OnPageChangeListener {

    private ArrayList<GoodsInfo> mgoodsList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ViewPager vp_content=findViewById(R.id.vp_content);
        mgoodsList=GoodsInfo.getDefaultList();
        ImagePagerAdapter adapter=new ImagePagerAdapter(this,mgoodsList);
        vp_content.setAdapter(adapter);
        vp_content.setCurrentItem(0);
        vp_content.addOnPageChangeListener(this);
    }

    @Override
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

    }

    @Override
    public void onPageSelected(int position) {
        Toast.makeText(this,"你选择的手机是"+mgoodsList.get(position).name,Toast.LENGTH_SHORT).show();
    }

    @Override
    public void onPageScrollStateChanged(int state) {

    }
}

原文链接:http://www.apkbus.com/blog-946024-77003.html

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消