当前位置: 首页 > news >正文

网站建设需要学些什么动漫制作专业学校前十名

网站建设需要学些什么,动漫制作专业学校前十名,东莞市住房和城乡建设网官网,wordpress禁用自定义最近在做一个ui循环滚动的功能#xff0c;网上找了半天脚本感觉都和我实际需求不太符合#xff0c;自己花费一些时间完成了这个功能记录一下。下面开始正题 #xff0c;我是采用unity自带组件Scroll View来完成#xff0c;首先设置Scroll View如下图 面板层级结构如下 然…最近在做一个ui循环滚动的功能网上找了半天脚本感觉都和我实际需求不太符合自己花费一些时间完成了这个功能记录一下。下面开始正题 我是采用unity自带组件Scroll View来完成首先设置Scroll View如下图 面板层级结构如下 然后创建一个预制体预制体需要锚点到左侧中心点设置为起始点设置完成后把这个图片随便放个层级不要在本层级不要影响后面生成。 然后开始编写代码我就直接贴了不懂可以看一下注释因为我是水平所以判断用的都是x轴如果你是垂直你改成y稍微修改一下代码就可以了差别应该不大。 using DG.Tweening; using System.Collections; using System.Collections.Generic;using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.UI;public class LoopScroll : MonoBehaviour,IBeginDragHandler {public ListSprite photographList;[Header(中心点)]public Transform Centre;private Vector3 startPos, endPos;[Header(预制体)]public GameObject item;[Header(预制体父级)]public Transform Content;[HideInInspector]public ListTransform itemList;bool isDrag false, isAdsorption;float MaxDis, MinDis;[Header(间隔距离)]public float SpacingDistance 100;[Header(缩放倍数)]public float Scale 1;Transform tempCentre; public Text tempCentreName;private void Awake(){instantiationItem();}void Start(){ isDrag true;//设置第一个坐标与最后一个坐标位置startPos itemList[0].position;endPos itemList[itemList.Count - 1].position;startPos.x - itemList[0].GetComponentRectTransform().rect.width /2;endPos.x itemList[0].GetComponentRectTransform().rect.width / 2;//求出最远距离for (int i 0; i itemList.Count; i){var dis Vector3.Distance(itemList[i].position, Centre.position);if (dis MaxDis){MaxDis dis;MinDis dis;}}}void instantiationItem()//生成预制体设置初始坐标{for (int i 0; i photographList.Count; i){var t Instantiate(item, Content);t.GetComponentImage().sprite photographList[i];t.name photographList[i].name;var pos new Vector3((t.GetComponentRectTransform().rect.width SpacingDistance) * (i), 0, 0);pos.x t.GetComponentRectTransform().rect.width;t.GetComponentRectTransform().anchoredPosition pos;itemList.Add(t.transform);}}void Islimit() //设置坐标切换与列表内元素与面板层级切换 保证层级与列表内数据同步{if (isDrag){for (int i 0; i itemList.Count; i){if (itemList[i].position.x startPos.x){itemList[i].position itemList[itemList.Count - 1].position new Vector3(SpacingDistance itemList[0].GetComponentRectTransform().rect.width, 0, 0);var temp itemList[i];itemList.Remove(itemList[i]);itemList.Add(temp);temp.SetSiblingIndex(itemList.Count - 1);}if (itemList[i].position.x endPos.x){itemList[i].position itemList[0].position - new Vector3(SpacingDistance itemList[0].GetComponentRectTransform().rect.width, 0, 0);var temp itemList[i];itemList.Remove(itemList[i]);itemList.Insert(0, temp);temp.SetSiblingIndex(0);}}}}void ScaleDistance()//根据百分比设置缩放动画{for (int i 0; i itemList.Count; i){double dis Vector3.Distance(itemList[i].position, Centre.position) / MaxDis;if (!double.IsInfinity(dis)){if (dis 0){if (dis0.05f){itemList[i].localScale Vector3.one * ((1f - (float)dis) * Scale) ;}else{itemList[i].localScale Vector3.one * ((1f - (float)dis) * Scale) * 0.8f;}}}} }Tween tw;void Adsorption() //停止滑动进行吸附{for (int i 0; i itemList.Count; i)//找出距离中心点最近的{float dis Vector3.Distance(itemList[i].position, Centre.position);if (dis MinDis){tempCentre itemList[i];tempCentreName.text itemList[i].name;}MinDis dis;}if (GetComponentScrollRect().velocity.x0 isAdsorption false)//判断当前滑动结束{//计算当前距离中心差多远后 进行吸附if (tempCentre){var dis Centre.position - tempCentre.position;tw Content.DOMoveX(Content.position.x dis.x, 0.5f);tempCentre null;isAdsorption true;}else{isAdsorption false;}}else if (GetComponentScrollRect().velocity.x!0)//如果在吸附过程中点击拖拽强制结束吸附动画{isAdsorption false;tw.Kill();}}// Update is called once per frame void Update(){Islimit();ScaleDistance();Adsorption();}public void OnBeginDrag(PointerEventData eventData){tw.Kill();} } 下面这个是脚本设置主要关注的就是公开的变量我都有注释结合上面的面板图很轻易就能看出来第一个就是循环图片间隔距离是两个图片之间的距离缩放倍数是中间最大是多少倍根据你工程设置默认设置1就可以了最后面的text是显示居中ui的名字名字的设置是根据图片名称来的。 运行后这三个内容层级都会同步可以进行一些你想要的操作 最后说下使用了Dotween插件吸附居中功能我是感觉有点延迟但是还没找到更好的方法如果大家有更好的方法欢迎大佬留言完成上面的设置就可以畅快玩耍了~~
http://www.tj-hxxt.cn/news/138229.html

相关文章:

  • 网站注册可以免费吗中山顺德网站建设
  • 阀门公司网站建设行业网站推广怎么做
  • 做网站源代码房子设计师怎么找
  • 泗水做网站ys178百度网盟网站有哪些
  • 园林效果图网站什么网站有教做衣服视频的
  • 重庆网站建设方案详细方案在线购物网站建设
  • 做啥类型网站营销型网站的评价标准
  • 本地服务器域名解析网站建设手机软件开发商
  • 简单响应式网站设计代码网站建站平台源码
  • 音乐网站页面设计深圳网站建设公司613
  • 网站可以做哪些广告最新型建筑模板有哪些
  • 长沙科技网站设计哪家专业wordpress the7.3
  • 工作室有专门的网站html5手机 网站
  • 站长网站推广建设一个网站需要什么软件
  • 高端网站建设的市场分析爱做网站网址
  • wordpress笑话站主题江苏分销网站建设
  • 福田区住房和建设局地址官方网站兰州网站建设q479185700惠
  • 昆山建设局网站查预售手机网站类型
  • 临沂个人做网站微小店网站建设用途
  • 网站如何发布到网上怎样做企业官方网站
  • 网站视觉分析宛城区微网站建设
  • seo网站分析南京网站建设开发
  • wordpress 插件编写优化网站是什么意思
  • 网站的风格设计有哪些广告平面设计要学多久
  • 做网站需要有王占山事迹
  • 园林网站免费模板有哪些公司的网站做的很好看
  • 西安外贸网站建设公司做业务在那几个网站上找客户端
  • php网站开发代做小网站搜什么关键词好
  • 微信网站制作设计方案网站整体建设方案设计
  • 晋城建设公司网站简单的html网页制作