扣丁学堂——ViewPager+ImageSwitch

扣丁学堂ImageSwitch【源码下载】

ImageSwitch演示效果:ViewPager+ImageSwich+ListView加强版演示效果:

扣丁学堂——ViewPager+ImageSwitch_第1张图片 

醉了超过2M的GIF不能上传,只能这种效果。

ImageSwitch还有其他的一些代码迟迟未传得原因是因为,觉得这节课程对着这代码敲一遍就新。

这节课的演示效果也不怎么地,动画不全,所以扩展另一个源码学习,感觉这样的组合效果已经很炫酷了。

回到源码讲解:

xml文件就一个ImageSwitch,略

Mainactivity

//实现触屏监听鲜果
public class MainActivity extends AppCompatActivity implements ViewSwitcher.ViewFactory,View.OnTouchListener {
    private ImageSwitcher imageSwitcher;
    //四张图
    private int[] images={R.mipmap.a,R.mipmap.b,R.mipmap.c,R.mipmap.d};
    private int index;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        imageSwitcher=(ImageSwitcher)findViewById(R.id.imageSwitcher);
        imageSwitcher.setFactory(this);
        imageSwitcher.setOnTouchListener(this);
    }


    @Override
    public View makeView() {
        ImageView iv=new ImageView(this);
        iv.setImageResource(images[0]);
        return iv;
    }
    //触屏事件
    float startX=0.0f;
    float endX=0.0f;
    @Override
    public boolean onTouch(View v, MotionEvent event) {
        int action=event.getAction();//获取当前事件动作
        if(action==MotionEvent.ACTION_DOWN){
            startX=event.getX();
            return true;
        }
        if (action==MotionEvent.ACTION_UP){
            endX=event.getX();
            if(startX-endX>20){//下一张
                index=index+1<images.length?++index:0;
                imageSwitcher.setInAnimation(this,android.R.anim.fade_in);
                imageSwitcher.setOutAnimation(this,android.R.anim.fade_out);

            }else if(endX-startX>20){
                index=index-1>=0?--index:images.length-1;
                //添加动画
                imageSwitcher.setInAnimation(this,android.R.anim.fade_in);
                imageSwitcher.setOutAnimation(this,android.R.anim.fade_out);

            }
            imageSwitcher.setImageResource(images[index]);
        }
        return true;
    }
}

常见有用的功能,滑动监听,转换图片的判断即实现,这个例子很简单,可以作为基本模板,想要将强的话就应该多看看分享的源码

效果确实不错,留着以后开发可能用到

图文切换,引导页也就说这么,希望对同为初学者的你有所帮助

补充扩张源码下载【扩展版源码下载】

你可能感兴趣的:(viewpager,ImageSwitch,扣丁学堂)