【发布时间】:2019-05-28 07:10:14
【问题描述】:
我正在运行时更改图像组件上的精灵,这会导致它停止使用图像的 RectTransform 调整大小并保持固定大小。更改精灵的代码在 Start() 方法中:
public Sprite mySprite;
GetComponent<Image>().sprite = mySprite
如果我将其注释掉,图像会很好地调整大小,所以我知道这是问题所在。
此外,这个确切的代码在 Unity 4 中运行良好,但自从我更新后它就无法运行。
【问题讨论】:
-
这没什么好说的,也不是minimal reproducible example 你有什么错误吗?没有代码或说明这与调整大小有什么关系
-
您的意思是调整大小以使其放大还是仅缩放切片边框?您的“MySprite”Sprite 是否定义了边框/切片?否则它不能“缩放”
-
@Vampirasu 这是一个没有边框或任何设置的简单图像。
-
@BugFinder 我开始认为这是一个 Unity 错误,因为除了我编写的代码之外,实际上并没有涉及任何代码。我在编辑模式下将正在实例化的预制件的副本放在场景中并播放它,它可以很好地调整大小。只是在运行时实例化它不起作用。
-
@BugFinder 另外,为了澄清,我在播放模式下在编辑器中手动调整图像大小。我还尝试通过产生相同结果的脚本设置 RectTransform 的 sizeDelta。