gpt4 book ai didi

ios - 从其他 View 更新 UIButton 标题...?

转载 作者:行者123 更新时间:2023-11-28 18:11:57 25 4
gpt4 key购买 nike

我正在开发 iPad 应用程序。在某个阶段我需要使用下拉类型功能。因此,我正在使用 UIPopoverView。

当 IBAction 在点击特定 UIButton 时触发时,我调整 popoverview 渲染 UITableViewController。

一切正常。我需要当用户点击任何单元格时,需要在附加的 UIButton 标题中设置相关的单元格值。

enter image description here

这里,popover View 是我单独创建的 UITableViewController View 。并在选择的 Outlet IBAction 上调用它。

CGRect dropdownPosition = CGRectMake(self.btnOutlet.frame.origin.x, self.btnOutlet.frame.origin.y, self.btnOutlet.frame.size.width, self.btnOutlet.frame.size.height);
[pcDropdown presentPopoverFromRect:dropdownPosition inView:self.view permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];

谢谢

最佳答案

Sangony 的回答几乎是正确的,但有一些小的变化,而不是将没有参数的方法注册为观察者,您应该添加它承认一个参数:

[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(someAction:)
name:@"ButtonNeedsUpdate"
object:nil];

然后,当您发布通知时(在表的 View didSelectRow:atIndexPath: 中),您可以添加一个对象(NSDictionay)作为用户信息:

//...
NSDictionary *userInfoDictionary = @{@"newText":@"some text"};
[[NSNotificationCenter defaultCenter] postNotificationName:@"ButtonNeedsUpdate"
object:self
userInfo:userInfoDictionary];
//...

然后在观察此通知的类中,您可以像这样处理 someAction 操作方法中的数据:

-(void)someAction:(NSNotification)notification{
NSString *textForTheButton = [[notification userInfo]objectForKey:@"newText"];
[self.myButton setTitle:textForTheButton
forState:UIControlStateNormal];
//...
}

您的按钮标题现在应该是“一些文本”。

关于ios - 从其他 View 更新 UIButton 标题...?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16299465/

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