gpt4 book ai didi

ios - 触发drawRect重绘 View 的按钮

转载 作者:行者123 更新时间:2023-12-01 17:20:56 27 4
gpt4 key购买 nike

我有一个带有 subview 的 VC。在 subview level我有一个按钮。我希望按钮导致 View 被更新。
IBAction代码在VC中。它目前所做的只是切换 BOOL值(value)。

回到 subview drawRect: 方法是测试 BOOL 的代码。并相应地更改 View 。

我的观察是,当按下按钮时,IBAction 代码运行,切换 BOOL ,但 drawRect:方法不会被调用。

我尝试手动调用 drawRect (不好的做法,没有工作)。我尝试调用 setNeedsDisplay 但这也不起作用(无法弄清楚如何引用以编程方式创建的 subview )。

欢迎提出建议。

IBAction 代码很简单,但包含在下面:

- (IBAction)rotateWindowButtonWasPressed:(id)sender
{
// just flip the boolean here. Need to make the code change in drawRect: in top2View.m
if ([myGlobals gWinVertical])
[myGlobals setGWinVertical:NO];
else
[myGlobals setGWinVertical:YES];
// Hoping this would force a redraw, but bounds have to change...:(
//_top2ViewOutlet.contentMode = UIViewContentModeRedraw;
}

最佳答案

要发出 drawRect 调用,请调用 setNeedsDisplay在您更改的 View 上.. 操作系统将在其上调用 drawRect 并自动影响重叠 View 。

在你的情况下,我认为
[self.view setNeedsDisplay]

关于ios - 触发drawRect重绘 View 的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15084270/

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