码迷,mamicode.com
首页 > 其他好文 > 详细

(十八)unity4.6学习Ugui中文文档-------技巧-Creating UI elements from scripting

时间:2014-09-22 13:39:32      阅读:398      评论:0      收藏:0      [点我收藏+]

标签:ugui   ngui   unity   unity3d   ui   

大家好,我是孙广东。   转载请注明出处:http://write.blog.csdn.net/postedit/38922399

更全的内容请看我的游戏蛮牛地址:http://www.unitymanual.com/forum.php?mod=guide&view=my

4CreatingUI elements from scripting


如果您正在创建动态UI, 在游戏中UI元素在哪里出现、消失,或更改基于用户操作或其他操作,你可能需要做一个脚本,实例化新ui元素基于自定义的逻辑。


Creating a prefab of the UI element


为了能轻松地动态地实例化 UI元素,第一步是创建一个UI元素的类型的预置体,是你想要能够实例化的。设置用户界面元素,你想要它在场景中,看起来的方式,然后将该元素拖到Project View项目视图,使它变成一个预置体。


例如,一个按钮的预置体可能是一个游戏对象与Image图像组件和一个Button按钮组件和一个子游戏对象具有Text组件。您可以设置不同的根据您的需求。


你可能想知道为什么我们没有 API方法来创建各种类型的控件,包括视觉效果和一切。原因是这个方式有无限多的。如一个按钮可以setup。它可能是一个图像、文本或两者都有?也许甚至是多个图像?文本的字体、颜色、字体大小和对齐方式是什么?图像应使用什么精灵?通过让你创建一个预置和实例化的您可以设置它正是你想要的方式。如果您以后想要更改您的用户界面的外观和感觉您只可以更改预置,然后,它将会反映在您的 UI,包括动态创建用户界面。


Instantiating the UI element


UI元素的预置体都作为正常使用Instantiate方法来进行实例化。在实例化时设置UI元素的父对象是什么,它建议使用 Transform.SetParent方法设置和 worldPositionStays参数设置为 false


Positioning the UI element


通常使用RectTransform定位 UI 元素。如果 UI元素是Layout Group布局组的子对象它将自动定位和定位步骤可以跳过。


定位一个Rect Transform时很有用,首先确定它已经或应该有拉伸的任何行为不。anchorMin anchorMax的属性并不相同时会发生拉伸行为。


对于非拉伸的 Rect Transform,将该位置设置最容易通过设置anchoredPosition sizeDelta属性。AnchoredPosition指定的pivotanchors的位置。SizeDelta同样的大小是有的时候不拉伸的情况。


对于伸展的Rect Transform,它可以是简单设置使用的offsetMin offsetMax的属性的位置。OffsetMin属性指定的角的相对较低的左锚点矩形的左下角。OffsetMax属性指定的角的相对上部右锚点矩形的右上角。


Customizing the UI Element


如果你动态地实例化多个 UI元素,你就会希望他们都看起来一样不太可能,这样做。无论是在菜单中的按钮,库存或别的东西的条目,你可能想要的个别项目有不同的文本或图像,当互动时做不同的事情。


这是通过获得各种组件和改变它们的属性。从脚本中如何使用 UnityEvents工作,看看关于图像和文本组件的脚本引用,。


 




(十八)unity4.6学习Ugui中文文档-------技巧-Creating UI elements from scripting

标签:ugui   ngui   unity   unity3d   ui   

原文地址:http://blog.csdn.net/u010019717/article/details/39449011

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!