UGUI 整页滑动
来源:互联网 发布:淘宝买家金钻好处 编辑:程序博客网 时间:2024/05/17 08:58
实现的功能 ,点击左箭头,向左翻一页,点击右箭头,向右翻一页
鼠标可以按住滚动视图进行滑动,拖动结束时,会智能的停在合适的一张
public void leftOrRight() //向左还是向右 { float zhi = scrollObj.horizontalScrollbar.value; if (zhi == 0) { scrollObj.horizontalScrollbar.value = 0; } else if(zhi>=jihe[jihe.Count-1]) { scrollObj.horizontalScrollbar.value = jihe[jihe.Count - 1]; } else { List<float> cache = new List<float>(); float rightValue = 0; for (int jjj = 0; jjj < jihe.Count; jjj++) { if (jihe[jjj] > zhi) { rightValue = jihe[jjj]; break; } } float leftValue = 0; List<float> huan = new List<float>(); for (int jjj = 0; jjj < jihe.Count; jjj++) { if (jihe[jjj] < zhi) { huan.Add(jihe[jjj]); } } leftValue = huan[huan.Count - 1]; print(leftValue); print(rightValue); if (Mathf.Abs(leftValue - zhi) < Mathf.Abs(rightValue - zhi)) //向左滑动 { scrollObj.horizontalScrollbar.value = leftValue; } else { scrollObj.horizontalScrollbar.value = rightValue; } } } public void zuo() //向左滑一张 左箭头对应这个方法 { //先获取当前滑条的值 float zhi = scrollObj.horizontalScrollbar.value; // print(zhi); zhi -= 0.01f; if (zhi <= 0) { } else { List<float> cache = new List<float>(); for (int jjj = 0; jjj < jihe.Count; jjj++) { if (jihe[jjj] < zhi) { print(jihe[jjj]); cache.Add(jihe[jjj]); } } print(cache.Count); scrollObj.horizontalScrollbar.value = cache[cache.Count - 1]; } } public void you() //向右滑一张 右箭头对应这个方法 { //先获取当前滑条的值 float zhi = scrollObj.horizontalScrollbar.value; print(zhi); zhi += 0.01f; if (zhi >=1) { } else { List<float> cache = new List<float>(); for (int jjj = 0; jjj < jihe.Count; jjj++) { if (jihe[jjj] > zhi) { print(jihe[jjj]); cache.Add(jihe[jjj]); } } print(cache.Count); scrollObj.horizontalScrollbar.value = cache[0]; } }
上面是一个脚本
下面这个脚本需要挂在 ScrollRect层级上
using UnityEngine;using UnityEngine.EventSystems;using System.Collections; public delegate void delegate01();public class kkk : MonoBehaviour ,IEndDragHandler{ // Use this for initialization void Start () { } // Update is called once per frame void Update () { } public void OnEndDrag(PointerEventData eventData) { GameObject.Find("beijing").GetComponent<paizhao_beijing>().leftOrRight(); }}
我原本是想在实例化的Item上添加OnEndDrag,这个方法,但是这个方法,发现用不了,原因是有ScrollRect存在,就不能触发OnEndDrag,找了半天,最后发现在ScrollRect对象上挂着OnEndDrag就可以触发
FR:徐海涛(hunk Xu)
阅读全文
0 0
- UGUI 整页滑动
- unity ugui实现整页滑动
- 【UGUI】UGUI 滑动翻页
- UGUI实现页面滑动
- UGUI动态滑动列表
- UGUI之滑动翻页效果
- UGUI ScrollRect滑动定位优化
- UGUI ScrollRect滑动定位优化
- UGUI滑动条细节以及UGUI Atlas脚本
- 【UGUI】Unity UGUI 滑动翻页 直接跳转页数
- UGUI中ScrollView滑动适应问题解决办法
- UGUI滑动容器的优化思路
- Unity中利用UGUI添加滑动页面和滑动条
- UGUI如果只做特定次数的滑动界面
- UGUI之ScrollRect添加响应事件后不能滑动
- Unity系列——UGUI创建滑动列表tableview
- Unity3D-UGUI-带滚动条的滑动文本框
- 使用UGUI ScrollView 排列不规则内容元素实现滑动效果
- jmockit测试
- 4697: CFNetwork internal error (0xc01a:/XXX/CFNetwork-811.4.18/Loading/URLConnectionLoader.cpp:304)
- C++网络编程(一)
- 音视频同步(播放)原理
- 设计模式原则(5)--Law of Demeter(LoD)--迪米特法则
- UGUI 整页滑动
- hdu 2476 String painter
- spring cloud-实现Eureka注册中心的HA
- LintCode:M-房屋染色
- ZA7783:MIPI转LVDS/MIPI转RGB888/RGB转LVDS
- Ubuntu 16.04 下 Vim安装及配置
- APP接口, 图片json格式
- Mac 下配置阿里云服务器
- org.thymeleaf.spring4.templateresolver模板视图解析器