很久沒有寫博客了,最近兩年在作遊戲後端開發,從事遊戲的同窗都有體會:不是在加班就是在加班的路上。也不多逛博客了,大部分時間活躍在Github上。最近公司後端比較閒散正好前端缺人,是時候轉前端了。哈哈哈...html
轉前端主要有幾個緣由:前端
1、前端的遊戲引擎發張的太快了,愈來愈炫。後端
2、打上家公司老大的臉(說前端UI很是難搭),之前後端大部分功能比前端提早一、2個月完成。框架
3、框架搭好後後面不多有修改,特別是通過項目驗證了穩定性。ide
4、長時間作一樣的事很容易產生疲憊感。this
5、前端也有不少東西值得挑戰,好比:shader、幀同步spa
迴歸重點:Unity製做滑動列表,先上效果圖(Unity初學者教程 教程裏面用的事NGUI,這裏是用UGUI)code
步驟:orm
1.在SceneMail建立一個Panel 更名爲ScrollRect,ScrollRect添加Mask和Scroll Rect組件,Scroll Rect組件勾選Vertical 只須要垂直滾動htm
2.在SceneMail建立一個Scrollbar控件
3.ScrollRect上添加子控件Panel 更名爲ScorllView,ScorllView大小覆蓋ScrollRect
4.ScorllView添加子控件Panel 更名爲Content,Content大小覆蓋ScorllView
5.Content添加Vertical Layout Group和Content size Fitter組件,Vertical Layout Group組件設置好間隔和對其方式,會自動排列咱們添加的控件,Content size Fitter用來調整顯示內容
6.將ScorllView、Content和Scrollbar分別拖到ScrollRect裏面 如圖所示
7.Scollbar組件屬性Direction修改爲 Bottom To Top(往下拉將ScorllRect底部隱藏部分拖出來)
8.製做Prefab Item
item是Toggle控件,去掉Lable控件,Panel是藍色背景,Checkmark是選擇控件 sender顯示的是王麻子的來信 time顯示的是時間 Button是刪除按鈕,將Item拖進Prefab製做成預製體
9.批量生成滑動列表的內容
public class SceneMail : MonoBehaviour { public Toggle mItemPrefab; private Transform mContentTransform; private Scrollbar mScrollbar; // Use this for initialization void Start() { mContentTransform = this.transform.Find("ScorllRect/ScorllView/Content"); mScrollbar = this.transform.Find("Scrollbar").GetComponent<Scrollbar>(); ShowItems(); mScrollbar.value = 1.0f; } /// <summary> /// 顯示Item列表 /// </summary> void ShowItems() { for (int i = 0; i < 20; i++) { Toggle item = Instantiate(mItemPrefab, transform.position, transform.rotation); item.transform.parent = mContentTransform; } } }