• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            posts - 311, comments - 0, trackbacks - 0, articles - 0
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理
            這個示例展示的是可伸縮的界面,點擊沒一個Quest,可以把里面的內容展開。如圖所示:
            請輸入描述
            首先先制作出基本的界面,這里就不再贅述(可以參考我上面的系列教程),在這里提一下,在制作背景時,可以使用Create a Widget創建出一個SimpleTexture,貼上合適的材質之后,不要縮放和移動它,為它添加一個Stretch組件(Component->NGUI->UI -> Stretch),該組件可以根據窗口的大小自動調整尺寸。注意該層級結構,最終效果如圖所示請輸入描述

            接下來就是這個示例的重頭戲了。選擇Quest Log,并為其創建一個新的Panel(NGUI->Create a panel),并命名為SubPanel,如圖所示
            請輸入描述
            選擇SubPanel,創建一個空的游戲對象,作為它的子物體,并命名為Table。該對象將來用于排列它的所有子對象的位置,現在暫時不管。如圖所示
            請輸入描述
            選擇Table對象,創建一個空的游戲對象,作為它的子物體,并命名為Quest1,reset一下。如圖所示
            請輸入描述
            選擇Quest1,為其添加一個Lable和一個SlicedSprite,最終效果如圖所示
            請輸入描述
            選擇Quest1,創建一個空的游戲對象,并命名為Tween,成為它的子對象,reset一下,并在Tween下創建一個Label,并輸入文字描述,最終效果如圖所示
            請輸入描述
            首先先把Tween對象的Enable關掉,再使用同樣的方式再制作出三個這樣的Quest出來,我這里偷懶,直接使用Ctrl+D復制出2個來,并命名為Quest2和Quest3。不用去管它的位置,如圖所示
            請輸入描述
            選擇Table對象,為其添加一個Table組件(Component->NGUI->Interaction->Table),并設置Colomn參數為1,Direction為Down,Padding的Y為4,Sorted、Hide Inactive和Keep Within Panel勾選上,點擊播放之后,其子物體就會自動地排列了,神奇!(大家從英文上應該能看出這些參數的意思吧,這里不贅述了)。如圖所示
            請輸入描述
            接下來實現點擊這些Quest時,會自動展開其下面的說明。選擇Quest1下面的Tween對象,為其添加一個TweenScale組件(Component->NGUI->Tween->Scale),并設置其參數如圖所示
            請輸入描述
            選擇Quest1下面的SlicedSprite,為其添加一個Trigger組件(NGUI->Attach a collider)用來接收輸入事件,接著為其添加一個Button Tween組件(Component-> NGUI->Interaction->Button Tween)這個組件很熟悉吧,對其他的幾個Quest進行類似的操作,點擊播放,鼠標放在Quest上點擊,ok,實現了!其參數如下
            請輸入描述
            如果你三個Quest同時展開,會發現,此時內容都漏出來了,呵呵,霸氣外漏!我們來解決這個問題。選擇SubPanel,設置其Panel組件中的Clipping為SoftClip,并設置它的size中x為420,Y為290,softness為X為1,Y為8,然后點擊再播放,哈,內容在這個設置的范圍內了。如圖所示
            請輸入描述
            問題又來了,我想看下面的內容呢。那么我們可以給他添加一個ScrollBar滾動條。在Quest Log下創建一個垂直ScrollBar元件,我們現在想當內容超出panel時scollBar才顯示出來,我們設置其Alpha為0,最后參數如圖所示
            請輸入描述
            現在來連接SubPanel和ScrollBar。選擇SubPanel,為其添加一個DraggablePanel組件(Component-> NGUI->Interaction->DraggablePanel)。然后把ScrollBar對象賦值給VerticalScrollBar,如圖所示
            請輸入描述
            午夜精品久久久久久中宇| 日本精品久久久久影院日本| 综合网日日天干夜夜久久| 久久久久久久久66精品片| 久久国产热精品波多野结衣AV| 久久婷婷国产综合精品| 国产精品欧美亚洲韩国日本久久| 香蕉久久久久久狠狠色| 精品精品国产自在久久高清| 色天使久久综合网天天| 国产91久久精品一区二区| 久久精品国产99久久香蕉| 久久只这里是精品66| 91精品国产综合久久香蕉| 亚洲中文字幕无码一久久区| 99久久免费国产精品| 亚洲AV无码成人网站久久精品大| 久久―日本道色综合久久| 少妇内射兰兰久久| 亚洲精品无码久久久久AV麻豆| 久久婷婷久久一区二区三区| 亚洲国产另类久久久精品小说| 久久久久久久亚洲精品| 国产精品久久久久影院嫩草| 午夜天堂精品久久久久| 亚洲精品乱码久久久久久蜜桃 | 国产亚洲美女精品久久久| 日本欧美久久久久免费播放网| 2021国产精品久久精品| 久久99精品久久久久久9蜜桃| 99999久久久久久亚洲| 久久ww精品w免费人成| 亚洲va久久久噜噜噜久久狠狠| 香蕉久久久久久狠狠色| 色播久久人人爽人人爽人人片AV| 久久精品无码一区二区三区免费| 青青热久久综合网伊人| 久久这里只精品国产99热| 久久99精品综合国产首页| 久久国产乱子伦精品免费强| 久久精品国产99国产精偷|