NGUI中UILabel使用url标签的一个bug
生活随笔
收集整理的這篇文章主要介紹了
NGUI中UILabel使用url标签的一个bug
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
在NGUI里,UILabel控件可以支持一些簡單功能的標簽,使文本顯示更豐富及實現(xiàn)類似超鏈接的功能。但是在使用的時候發(fā)現(xiàn)了NGUI3.5.9版本里存在著一個bug。不過還好修復這個bug也很簡單。
在UILabel中支持[url=link]text[/url]的方式來定義類超鏈接的文本。bug就出現(xiàn)在同一個UILabel里使用兩個及以上這種標簽時,最終顯示的label內容就會全錯掉。
? text內容:[url=a]a[/url][url=
當再輸入任一字符后,label的內容就全消失了。
bug修復:在NGUIText類中,有一個函數(shù)ParseSymbol,這個函數(shù)里對文本中定義的標簽進行識別(個人感覺寫得太難看了,一個字,丑陋)。這函數(shù)里找到對url標簽的匹配,將其中的
//int closingBracket = text.IndexOf(']'); //替換修復為 int closingBracket = text.IndexOf(']', index+4);?原因就是在尋找‘]’字符時的開始位置錯誤。這樣子就解決問題了。
ps: 其實NGUI的這個功能還是挺雞肋的,還不如去用html engine for ngui插件,用標準的html標簽
ps2: 在看了那段ParseSymbol代碼后,深深地想起在學校里教的語法解析,只依稀記得狀態(tài)機,其他的都忘記了。。。
轉載于:https://www.cnblogs.com/bicker/p/3741791.html
總結
以上是生活随笔為你收集整理的NGUI中UILabel使用url标签的一个bug的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《linux 网卡别名的添加和绑定》RH
- 下一篇: [转]Oracle DB管理内存