scrollView翻页效果

using UnityEngine;
using System.Collections;

public class ScrollView : MonoBehaviour
{
public Texture[] pics_;
public GUISkin skin_;
private int nIndex_ = 0;
private Vector2 scrollPosition_;
private Rect rcList_;
private Rect rcItem_;
// Use this for initialization
void Start()
{
rcList_ = new Rect(0, 0, Screen.width * pics_.Length, Screen.height);// 总大小,这个要计算正确
rcItem_ = new Rect(0, 0, Screen.width, Screen.height); // 每个item的大小,其实这里还是可视区域的大小,如果item比较小的,可视区域另外算好
nIndex_ = 0;
}

// Update is called once per frame
void Update()
{
if (Input.touchCount > 0)
{
Touch touch = Input.touches[0];
// 滑动
if (touch.phase == TouchPhase.Moved)
{
scrollPosition_.x -= touch.deltaPosition.x;
}
else if (touch.phase == TouchPhase.Ended)
{//滑动结束
GetIndexFromPos();
scrollPosition_.x = Screen.width * nIndex_;
}
}

}
// 这里为了提高性能,实际只画了3个图
void OnGUI()
{
GUI.skin = skin_;
scrollPosition_ = GUI.BeginScrollView(rcItem_, scrollPosition_, rcList_, false, false);
if (nIndex_ - 1 >= 0)
GUI.DrawTexture(new Rect((nIndex_ - 1) * Screen.width, 0, Screen.width, Screen.height), pics_[nIndex_ - 1], ScaleMode.StretchToFill);
GUI.DrawTexture(new Rect((nIndex_) * Screen.width, 0, Screen.width, Screen.height), pics_[nIndex_], ScaleMode.StretchToFill);

if (nIndex_ + 1 < pics_.Length)
GUI.DrawTexture(new Rect((nIndex_ + 1) * Screen.width, 0, Screen.width, Screen.height), pics_[nIndex_ + 1], ScaleMode.StretchToFill);
GUI.EndScrollView();
}
// 计算得到当前的index
private void GetIndexFromPos()
{
for (int i = pics_.Length - 1; i >= 0; i--)
{
if (scrollPosition_.x > Screen.width * (i + 0.5f))
{
nIndex_ = i + 1;
return;
}
}
nIndex_ = 0;
}

}

时间: 2024-10-12 03:14:52

scrollView翻页效果的相关文章

iOS开发日记45-类似淘宝商品详情查看翻页效果的实现

今天博主有一个类似淘宝商品详情查看翻页效果的实现的需求,遇到了一些困难点,在此和大家分享,希望能够共同进步. 1.使用第三方框架 我用到的第三方库EGORefreshTableHeaderView下拉刷新的效果还有就是PWLoadMoreTableFooterView上拉加载更多 主要的思路在于UISCrollView两页,一页展示商品概况,另一页展示商品更多详情 首先,第一页的view包含一个UITableView,这个tableView实现PWLoadMoreTableFooterView中

android开发教程:android手势翻页效果

听麦子学院android开发老师说要实现手势翻页效果,主要用到ViewFlipper和GestureDetector.  ViewFlipper变化当前显示内容,GestureDetector监听手势.  用于多页的展示非常酷.  现在我就给大家简单说明下,  首先创建工程:TestFlip,创建主Activity:TestFlip.  在res/layout/main.xml中添加flipper信息,如下:  Java代码   1. <?xml version="1.0" en

turn.js 图书翻页效果

今天用turn.js 做图书的翻页效果遇到问题: 图片路径总是出错 调了一天,总算调出来了 我用的thinkphp,其他的不知道是不是一样 两个地方要改动: 1.后台查出地址 注意的地方:1.地址要完全的 2.js要用json格式的数据 $more = M('File')->where(array('id'=>$id))->find(); $more1 = json_decode($more['more'],true); foreach($more1 as $k => $v){ /

微信里经常看到的滑动翻页效果,slide

上个星期我们的产品姐姐让我帮她写个微信里经常看到的滑动翻页效果,今天抽空写了3个小demo(只写了webkit需要chrome模拟手机看 开启touch事件), 故此写个随笔. 1.demo1,整个大容器tranlateY(性能应该是最好的,但是如果增删一页的话对css影响很大,如果用sass或less除外) html: <!DOCTYPE html> <html> <head> <title></title> <meta name=&qu

微信翻页效果

今天闲得蛋疼,重构了之前写的微信翻页效果. 先上地址,觉得可以给颗星星,觉得有问题请大力吐槽. github:https://github.com/skyweaver213/slide 3个demo地址:http://skyweaver213.github.io/slide/widget/slide1/slide.htmlhttp://skyweaver213.github.io/slide/widget/slide2/slide.htmlhttp://skyweaver213.github.i

CSS3-----图片翻页效果的展示

在开发一个网站的过程中各种翻页效果数不胜数,在这里我将介绍一下简单的一种方法就是使用css3的旋转即可实现这种常见的效果: 显示效果如下: 首先是页面的布局,不用那么复杂; a标签的href属性,一般指向一个URL地址,也可以调用javascript,如href="javascript:xxx();",但是文档中推荐这样写<a href="http://www.111cn.net/zhongxing/U880/ javascript:void(0)" oncl

子数涵数&#183;PS ——翻页效果

一.首先在网络上下载一张图片,作为素材.这是我下载的素材,至于为什么选择这张照片呢,当然不是因为自己的一些羞羞的念头啦. 二.打开Photoshop,我使用的版本是CS3(因为CS3所占的磁盘空间较小,CS4与其就有天壤之别) 三.进入PS之后,打开之前下载好的素材,图如下: 四.复制一个图层,快捷键为Ctrl+J(在每次P图之前复制一个图层是一个好习惯) 五.然后将“背景”图层的可视取消(就是点击一下“背景”图层左边的那个小眼睛) 六.使用矩形选框工具,快捷键为M,在你所想要实现翻页效果的地方

transform3D实现翻页效果

---恢复内容开始--- 闲篇 最近升级了下百度音乐,唯一的感觉就是动画效果很炫丽.我不是个对产品很敏感的人,但是这段时间观察一些大厂的产品发现现在的APP越来越重视动画效果了.大家可能没有注意过,连支付宝的一个很边缘很边缘的小角落(“财富 ->芝麻信用分 ->信用猜猜”)动画也是很炫的.随着手机硬件的增强以及广大苦逼程序员的不懈努力与钻研,APP的会越来越强调交互性,物理效果(UIDynamic)和动画效果(CoreAnimation)会越来越受欢迎. 准备 好吧,闲话不说了,首先跟大家坦白

Android用悬浮按钮实现翻页效果

今天给大家分享下自己用悬浮按钮点击实现翻页效果的例子. 首先,一个按钮要实现悬浮,就要用到系统顶级窗口相关的WindowManager,WindowManager.LayoutParams.那么在AndroidManifest.xml中添加权限: ? 1 <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> 然后,我们要对WindowManager,WindowManager.La