gpt4 book ai didi

objective-c - UITextView 未正确调整大小

转载 作者:行者123 更新时间:2023-11-28 22:43:51 26 4
gpt4 key购买 nike

我有一个 View ,它在顶部有一个 TableView ,在 TableView 下方有一个 ScrollView 。当我按下调整大小栏按钮项目时,我想隐藏表格 View 并最大化 ScrollView 。我让 ScrollView 和表格 View 正确设置动画,但我正在尝试调整 ScrollView 内 UITextView 的大小以利用额外的屏幕空间。

每当我计算调整大小时,UITextView 都会转到屏幕的左上角,我不确定为什么。我什至没有修改 X 和 Y,只是修改了高度。

CGRect newDesFrame = descriptionTextView.bounds;
newDesFrame.size.height = newDesFrame.size.height + tableViewFrame.size.height;
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:.5];

self.scrollView.frame = scrollFrame;
self.descriptionTextView.frame = newDesFrame;

[UIView commitAnimations];

我不确定为什么会这样。 descriptionTextView.bounds 是否因为位于 UIScrollView 内的 UIView 中而变得困惑?看起来,当我对 ScrollView 的 X 和 Y 执行 NSLog 时,它是 0,0。这很奇怪,因为它不在父 View 或 View 中的 0,0。我该如何解决这个问题?

最佳答案

descriptionTextView 很可能会跳到左上角,因为您实际上正在更改原点(x 和 y)。你开始于:

CGRect newDesFrame = descriptionTextView.bounds;

获取该 TextView 的边界将为您提供原点为 0,0 的 CGRect,因为“边界”为您提供 View 在其自己的局部坐标空间中的矩形。

试试这个:

CGRect newDesFrame = descriptionTextView.frame;

这将为您提供 View 在其父 View 坐标空间中的矩形,包括实际原点。

关于objective-c - UITextView 未正确调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13770300/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com