最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

UGUI的滾動窗修改

2020-05-25 11:26 作者:vicozan  | 我要投稿

最近想嘗試用unity的ugui來做一個(gè)節(jié)點(diǎn)化工具,發(fā)現(xiàn)有不少問題。我又不想大面積修改源碼,通過查看ugui源碼倒是想到些比較惡心的修改方法也能到達(dá)目的,特此記錄一下。

方法就是利用他開放的可重載函數(shù)或者非私有變量。

舉個(gè)具體的例子。比如ScrollView這個(gè)滾動窗,按下鼠標(biāo)左鍵不放的情況下可以拖拉窗口。但是仔細(xì)觀察發(fā)現(xiàn)左鍵按下的位置和實(shí)際拖拉的位置會有偏差,看源碼發(fā)現(xiàn)OnBeginDrag這個(gè)回調(diào)是在移動一小段距離之后才會觸發(fā),對于有強(qiáng)迫癥的人來說這就很不舒服了。

問題就出在這,應(yīng)該把這個(gè)變量的修改時(shí)機(jī)改為鼠標(biāo)按下時(shí),而非這個(gè)開始拖動時(shí)

查看源碼發(fā)現(xiàn)這個(gè)關(guān)鍵變量居然是私有的。。。,所幸的是下面還有一個(gè)保護(hù)型變量?

既然如此那就有辦法了,把原本該修改的m_PointerStartLocalCursor的偏差值加到m_ContentStartPosition上去就行了,雖然看著惡心了點(diǎn),但總比重載N個(gè)虛函數(shù)要來的簡單的多。。。


UGUI的滾動窗修改的評論 (共 條)

分享到微博請遵守國家法律
宁夏| 桐梓县| 清新县| 林州市| 延吉市| 砀山县| 汉中市| 衢州市| 五华县| 类乌齐县| 滨海县| 和平县| 旌德县| 宜州市| 时尚| 潮州市| 金沙县| 陕西省| 晴隆县| 鹤壁市| 新龙县| 丹阳市| 潍坊市| 观塘区| 梓潼县| 南平市| 孙吴县| 岱山县| 绥阳县| 平顺县| 永登县| 海盐县| 香格里拉县| 射阳县| 河源市| 镇坪县| 饶平县| 泽州县| 永嘉县| 大港区| 黔西县|