时间:2021-05-20
本文实例为大家分享了Unity3D实现列表分页效果的具体代码,供大家参考,具体内容如下
using System.Collections.Generic;using UnityEngine; public class Page : MonoBehaviour { public List<string> Tips = new List<string>(); public Texture2D DetailImg1; public Texture2D DetailImg2; private int pageCount = 0;//当前记录所需页数 private static int currentPage = 1;//当前页码 void OnGUI() { pageCount = Mathf.CeilToInt(Tips.Count / 8.0f);//计算当前的页码总数 int m_count = 0;//计算当前页的记录数 if (currentPage != pageCount)//判断是否是最后一页,若不是则每页绘制8条记录 { m_count = 8; } else { if (Mathf.CeilToInt((Tips.Count + 1) / 8.0f) > pageCount)//判断最后一页是否有8条记录 { m_count = 8; } else { m_count = Tips.Count % 8;//计算最后一页的记录数 } } for (int i = 0; i < m_count; i++) { if (i % 2 == 0) { GUI.DrawTexture(new Rect(268, 253 + i * 36, 487, 36), DetailImg1); } else { GUI.DrawTexture(new Rect(268, 253 + i * 36, 487, 36), DetailImg2); } GUI.Label(new Rect(310, 253 + i * 36, 300, 36), Tips[(currentPage - 1) * 8 + i]); } //超过一页内容时,显示页码跳转 if (pageCount > 1) { float temp = Screen.width / 2 - pageCount / 2 * 20; for (int i = 1; i <= pageCount; ++i) { //更改按钮样式 if (currentPage == i) { GUI.backgroundColor = Color.red; } else { GUI.backgroundColor = Color.white; } //绘制按钮 if (GUI.Button(new Rect(temp + 20 * i, 600, 20, 20), i.ToString())) { currentPage = i;//更改当前选中的页 } } } }}以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
Unity3D中shader轮廓描边效果想利用Unity3D中shader这个功能实现描边轮廓边框效果该怎么做呢,相信有很多搞开发的人想知道,为此下面就给大家介
好多unity3d的爱好者,可以把游戏导出为linux的版本,让unity3d游戏在ubuntu下跑起来...1、打开自己的unity3d游戏项目,File--
基于unity3D实现渐变颜色的简单脚本,代码很少,就不废话了,直接上代码和效果图。效果图:usingSystem;usingSystem.Collection
Unity3d描边框效果网上有很多,大多是使用Shader来实现的本文介绍使用Collider来实现这么一种效果效果图如下将物体添加Collider(BoxCo
Unity3D怎么显示网格,我们学习Unity3D的时候,教程老师的页面里面的视图窗口有网格,我们怎么漆黑一片,我们怎么显示网格呢软件名称:Unity3DPro