gpt4 book ai didi

ios - viewDidLoad 与 viewDidAppear - 名称标签问题

转载 作者:行者123 更新时间:2023-11-29 11:49:15 25 4
gpt4 key购买 nike

我在显示和更新用户名标签时遇到了这个问题。

用户 id 1 - ‘Felicia’

用户 id 2 - “Sam”

(第一个屏幕:默认用户是“Felicia”) 1st screen: default user is 'Felicia'

(第二个屏幕:将用户更改为“Sam”时) 2nd screen: when changed user to 'Sam'

(第 3 个屏幕:点击另一个屏幕后,用户名标签自动恢复为“Felicia”,而它应该是“Sam”) 3rd screen: after clicking to another screen, the username's label auto revert back to 'Felicia' when it supposed to be 'Sam' as user is not changed

我的理想输出是用户名的标签将保留为所选用户,除非用户发生更改,并且只要名称更新,也能够在侧面菜单栏上反射(reflect)名称标签。

在我的代码中,我尝试在 viewDidAppear 和 viewDidLoad 中添加我的方法(getUserInfo() 和 setUserNameLabel()),但是这两种情况都没有生成我想要的输出。

viewDidAppear

优点:- 名称标签将反射(reflect)所选用户名称的更新(用户可以更改其名称)

缺点:- 选择其他 View 时,名称标签将恢复为侧边菜单栏上用户 id 1 的名称

viewDidLoad

优点:- 选择其他 View 时,名称标签不会恢复为侧边菜单栏上用户 id 1 的名称

缺点- 名称标签不会反射(reflect)所选用户名称的更新

最佳答案

您需要在侧边菜单 viewcontroller 中创建委托(delegate)或使用 NSNotificationCenter 来触发名称更改事件。

因为当您创建侧边菜单时,以便在此类 viewDidLoad 或任何其他方法在生命周期中调用一次。

通过 NSNotificationCenter 执行此操作的示例。

https://stackoverflow.com/a/24756761/3901620

关于ios - viewDidLoad 与 viewDidAppear - 名称标签问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41948591/

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