unity实现翻页效果
本文实例为大家分享了unity实现翻页效果的具体代码,供大家参考,具体内容如下
一、示意图
二、步骤
创建物体ToPanel;添加组件ScrollRect,
在下面创建一个空物体用来装需要移动的子物体,
创建一个Scrollbar;
三、代码
下面展示一些内联代码片。
usingUnityEngine; usingSystem.Collections; usingUnityEngine.UI; usingSystem.Collections.Generic; publicclassSliderControl:MonoBehaviour { publicScrollbarm_Scrollbar; publicScrollRectm_ScrollRect; [Header("子物体的父物体")] publicGameObjectpanel; [Header("移动到多少百分比图片切换")]//注释 [Range(0.1f,0.9f)]//范围 publicfloatbanfenbi=0.5f; [Header("是否限制一次只能切换一张图片")] publicboollimit=false; privatefloatmTargetValue; privateboolmNeedMove=false; privateconstfloatSMOOTH_TIME=0.2F; privatefloatmMoveSpeed=0f; privatefloatchild_Count; privatefloatnum1; privatefloatvar_Down; privateListnum_list1=newList (); privateList num_list2=newList (); privateList num_list3=newList (); privateintweizhi;//页数 voidStart() { weizhi=0; child_Count=panel.transform.childCount; num1=1/(child_Count-1); print("-----子物体数量------"+child_Count+""+num1); for(inti=0;i weizhi) { weizhi=weizhi+1; } elseif(i==weizhi) { weizhi=i; } else { weizhi=weizhi-1; } mTargetValue=num_list1[weizhi]; } else { mTargetValue=num_list1[i]; weizhi=i;//页数 } break; } } mNeedMove=true; mMoveSpeed=0; } /// ///直接跳转到指定页数 /// ///publicvoidOnButtonClick(intvalue) { mTargetValue=num_list1[value]; if(mTargetValue<0) { mTargetValue=0; } if(mTargetValue>1) { mTargetValue=1; } weizhi=value; mNeedMove=true; } voidUpdate() { if(mNeedMove) { if(Mathf.Abs(m_Scrollbar.value-mTargetValue)<0.01f) { m_Scrollbar.value=mTargetValue; mNeedMove=false; MoveEnd(); return; } m_Scrollbar.value=Mathf.SmoothDamp(m_Scrollbar.value,mTargetValue,refmMoveSpeed,SMOOTH_TIME); } } /// ///移动完毕的回调 /// publicvoidMoveEnd() { print("-----移动完毕-----第几页---"+(weizhi+1)); } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。