本文实例为大家分享了Android实现滑动屏幕切换图片的具体代码,供大家参考,具体内容如下

activity_main.xml 文件代码:

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

tools:context="com.example.administrator.hand_gliding.MainActivity">

android:layout_width="match_parent"

android:layout_height="match_parent"

android:id="@+id/imageView"

android:src="@drawable/a1"/>

MainActivity.java 文件代码:

package com.example.administrator.hand_gliding;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;

import android.view.GestureDetector;

import android.view.MotionEvent;

import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {

//定义图片

private int[] resId = new int[]{

R.drawable.a1,R.drawable.a2,R.drawable.a3,R.drawable.a4,

R.drawable.a5,R.drawable.a6,R.drawable.a7

};

//图片下标序号

private int count = 0;

//定义手势监听对象

private GestureDetector gestureDetector;

//定义ImageView对象

private ImageView iv;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

iv = (ImageView)findViewById(R.id.imageView); //获取ImageView控件id

gestureDetector = new GestureDetector(onGestureListener); //设置手势监听由onGestureListener处理

}

//当Activity被触摸时回调

public boolean onTouchEvent(MotionEvent event){

return gestureDetector.onTouchEvent(event);

}

//自定义GestureDetector的手势识别监听器

private GestureDetector.OnGestureListener onGestureListener

= new GestureDetector.SimpleOnGestureListener(){

//当识别的手势是滑动手势时回调onFinger方法

public boolean onFling(MotionEvent e1,MotionEvent e2,float velocityX,float velocityY){

//得到手触碰位置的起始点和结束点坐标 x , y ,并进行计算

float x = e2.getX()-e1.getX();

float y = e2.getY()-e1.getY();

//通过计算判断是向左还是向右滑动

if(x > 0){

count++;

count%=(resId.length-1); //想显示多少图片,就把定义图片的数组长度-1

}else if(x < 0){

count--;

count=(count+(resId.length-1))%(resId.length-1);

}

iv.setImageResource(resId[count]); //切换imageView的图片

return true;

}

};

}

界面设置效果:

这个功能的代码里有很多没见过的单词,本人英语学的不好,需要查查意思然后找这些方法的功能。

可以用这个加上切换动画做一个图片查看器。

由于没用模拟器,用的是真机调试,给不了滑动的实物图,抱歉抱歉。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

java 滑块控制图片渐变切换_Android实现滑动屏幕切换图片相关推荐

  1. swiper的介绍以及使用(移动端滑动屏幕切换页面案例)

    一.swiper介绍 Swiper常用于移动端网站的内容触摸滑动  Swiper是纯javascript打造的滑动特效插件,面向手机.平板电脑等移动终端.  Swiper能实现轮播图.触屏焦点图.触屏 ...

  2. Android ViewFlipper滑动屏幕切换

    最近看到ViewFlipper和Animation在一起的用法,感觉很好,我就自己写了一下,感觉灰常好用,效果比gallery的滚动查看图片好用多了,这个也是实现滚动屏幕切换图片,但是用户体验要好很多 ...

  3. 小程序滑动屏幕切换视频

    项目需求:滑动屏幕,切换短视频,实现类似抖音等短视频平台的视频切换效果 最终效果图:滑动屏幕自动加载,切换视频和产品图片 分析:video是原生标签,层级太高,在全屏的情况下,其他组件均会被遮挡,所幸 ...

  4. Android实现滑动屏幕切换图片

    书上的代码有几个错误,晚饭前折腾了半天终于搞定了,肚子贼饿... 不多说,上代码. activity_main.xml 文件代码: <?xml version="1.0" e ...

  5. Android (滑动屏幕切换图片的实现)

    一.首先实现界面部分 代码: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout x ...

  6. webview 禁用横竖屏切换_Android 禁止横竖屏切换

    MainActivity里面的代码: public void onConfigurationChanged(Configuration newConfig) { try { super.onConfi ...

  7. 微信小程序tab切换(点击标题切换,滑动屏幕切换)

    效果图: WXML文件 <view class="tab"><scroll-view class="nav" scroll-x="t ...

  8. 使用vue-touch实现移动端左右滑动屏幕切换页面(左右滑动切换路由)

    1.安装vue-touch npm install vue-touch@next --save 2.在main.js中引入 import  VueTouch from 'vue-touch' Vue. ...

  9. GestureDetector学习之左右滑动,上下滑动屏幕切换页面

    要实现滑屏等触发事件,视情况而定: 如果实现的触屏或者手势效果较多,则使用第一种方法,实现OnGestureListener 接口(参考OnGestureListener): 如果只是实现较少的效果, ...

最新文章

  1. 自动编码器的评级预测
  2. 骑行318、 2016.7.8
  3. python3 xrange *的作用
  4. Apache ZooKeeper - 使用ZK实现分布式锁(非公平锁/公平锁/共享锁 )
  5. gitlab添加用户
  6. 渗透测试-验证码的爆破与绕过
  7. 【转】Task和async/await详解
  8. Cesium中的相机—YawPitchRoll
  9. 将文件放到Android模拟器的SD卡
  10. Java8 Base64
  11. c语言编程流水灯与交通灯实验,C51单片机实验报告流水灯交通灯定时器双机交互时钟(10页)-原创力文档...
  12. SQL2005之后MS SQL版本 T-SQL 新增语法、函数(二)
  13. 本地编译AndroidX源码
  14. Spring Cloud Gateway初体验
  15. 步进电机和步进电机电机驱动器
  16. Simulink Mutual Inductance互感线圈模块使用方法
  17. 共享汽车违章难处理 车企用定位模块来解决
  18. vue项目性能优化(图片优化)
  19. 小游戏--三子棋——N子棋(实现)
  20. 2022哈工大计算机组成原理大作业——给定指令系统的处理器设计

热门文章

  1. 失荆州,败夷陵影响有多大
  2. 如何编写键盘驱动程序
  3. 从零开始,教你用Webpack构建React基础工程
  4. PowerDesigner导出word总结
  5. 洛谷P1553 数字翻转(升级版)
  6. 基于ARM核心板的5G技术应用-车地5G传输终端
  7. rpmbuild打包错误——needs unknown symbol *
  8. 【浙江大学】考研初试复试资料分享
  9. 怎么使用讯捷CAD编辑器编辑文字
  10. LCD编程_画点线圆