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

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

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

4、CreatingUI 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指定的pivot与anchors的位置。SizeDelta同样的大小是有的时候不拉伸的情况。

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

Customizing the UI Element

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

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



时间: 2024-10-02 20:29:18

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

(十七)unity4.6学习Ugui中文文档-------技巧-Creating a World Space UI

3.Creating a World Space UI UI系统很容易地创建UI用户界面,被定位在其他2D或 3D场景中对象之间的世界中. 开始通过创建一个 UI元素(如Image图像),如果在你的场景中还没有,可以通过使用:GameObject > UI > Image.这也将为您创建一个画布. Set the Canvas to World Space 选择你的画布,改变Render Mode渲染模式为World Space世界空间. 现在你的画布已经位于世界空间中,所有相机都可以被看到,

(三十)unity4.6学习Ugui中文文档-------制作一个泛型的MODAL窗口

孙广东 2015.5.11 在此文章中我们将制作一个泛型的MODAL窗口 (Yes, No, Maybeso, Cancel) 在那里我们可以把内容和动作push到窗口中,这个窗口可以在我们的游戏的任何地方使用,按钮被按下时事件工作. 涉及到的代码: using UnityEngine; using System.Collections; public class BringToFront : MonoBehaviour { void OnEnable () { transform.SetAsL

(二十六)unity4.6学习Ugui中文文档-------UGUI的开源Tween工具轻量而强大

出处:http://blog.csdn.net/u010019717 很多Unity开发者对NGUI很了解,而且发展的真的很完善,从以前的SendMassage 升级到更高效的 事件系统,包括很好的Tween相关,还有很多周边工具. 但是随着Unity4.6.5.0的推出,unity更原生专业高效的UGUI问世, 虽然从完善上没有NGUI完善,但是必将是以后的发展方向. 而且现在NGUI在U5中无法运行. UGUI还没有自带Tween相关,官方的案例都是使用Animation这个确实不推荐.  

(二十八)unity4.6学习Ugui中文文档-------uGui Effect Tool

浏览一下 GitHub ,找了找UGUI开源的东西 https://github.com/WestHillApps/uGUI-Effect-Tool 发现了 uGuiEffectTool (包括Blend[意义不大] 和 渐变) 这个是原始图片 Blend的效果: Blend的代码: using UnityEngine; using System.Collections.Generic; using UnityEngine.UI; namespace UiEffect { [AddCompone

(二十五)unity4.6学习Ugui中文文档-------UGUI-Extensions

?? 出处:http://blog.csdn.net/u010019717 这个库是什么? 在此存储库中是扩展脚本来增强您的Unity UI experience的集合.这些脚本从许多来源收集和合并,随着时间的推移改善Unity UI experience.(脚本绝大多数来自脚本线程上unity UI 论坛在这里)你可以下载/项目访问脚本,或您可以下载此预编译的 Unity Asset资产. Unity UI Extensions Unity Asset Controls and extensi

(二十九)unity4.6学习Ugui中文文档-------运行时创建Scroll-lists

?? 孙广东 2015.5.10 首先要滚动和list形式存储内容.  使用Scroll Rect组件.就可以滚动了,但是有时候我们不希望,item超过区域还显示:就要使用Mask组件,说明一下,Mask组件组好配合Image一起使用. 下面的图:显示了的情况[头像是子对象Image].1.父对象只有Mask组件:2.有Mask和Image组件[图片为none]:3.有Mask和Image组件[图片有Alpha透明区域]     在list容器中的item 我们怎么管理呢?VerticalLay

(二十二)unity4.6学习Ugui中文文档-------交互-Eventsystem & Binding

大家好,我是孙广东.   转载请注明出处:http://write.blog.csdn.net/postedit/38922399 更全的内容请看我的游戏蛮牛地址:http://www.unitymanual.com/forum.php?mod=guide&view=my 完整的教程下载地址:http://www.unitymanual.com/thread-26665-1-1.html 5.4 Eventsystem& Binding 这两个东西其有用处不同也没有什么可比較的,可是也要区

(十三)unity4.6学习Ugui中文文档-------参考-UGUI Interaction Components(下)

 大家好,我是孙广东.   转载请注明出处:http://write.blog.csdn.net/postedit/38922399 更全的内容请看我的游戏蛮牛地址:http://www.unitymanual.com/forum.php?mod=guide&view=my 4.5 Slider 滑块控件允许用户通过拖动鼠标从一个预先确定的范围选择一个数字值.熟悉的例子包括在游戏中困难设置和在图像编辑器中亮度设置. Properties Property: Property: Interac

unity4.6学习Ugui中文文档-------参考-UGUI Rect Transform .

这一节走进更多的深度,有关unity的用户界面功能. 1.Rect Transform Rect Transform是2D与 3D 图形的Transform组件对应.它用来指定用户界面系统中的大小.位置和旋转的控件 Properties Property: Function: Pos (X, Y and Z) 相对锚点anchors的矩形枢轴pivot点的位置. Width/Height 矩形的宽高 Left, Top, Right, Bottom 矩形的边缘相对于其锚点的位置.这可以被认为是内