gpt4 book ai didi

ios - 当 View 加载到一个 xib 文件中时选择特定的 UIView

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

我的导航栏上有 5 个分段控制段,并且我的应用程序的要求是我必须仅更改一个段内的 View 。现在我在一个 xib 中有两个 UIViews。我已经设置了一个整数标志,根据该标志,我需要更改 View 。我发布此内容是因为这两个 View 在一个 xib 中都会有一个 TableView ,并且它们将具有不同的行数、不同的 cellForRowAtIndexPathdidSelectRowAtIndexPath。所以两个问题是 - 如何根据标志选择特定 View 以及如何管理两个 UIView 的委托(delegate)方法,因为文件所有者会产生问题?如果有人建议使用 UIViewController 创建一个单独的类,那么如何覆盖/替换该特定段的 View ?

请注意,我没有使用 Storyboard。应用程序仅基于 XIB

最佳答案

如果我理解问题(英语对我来说不是母语),获取必要数据的方法之一:

  1. 您可以使用 NSArray *subviews = [[self view] subviews]; 获取 View 中所有 View 的集合(集合不仅可以包含 UIView 对象)分配给 XIB 的 Controller ;
  2. 您可以检查属于类 [object isKindOfClass:[UIView class]]; 的每个对象以找到所需的 UIViews;
  3. 您可以通过属性tag 确定UIView(可以在XIB 中设置);或为其使用一些其他属性。
  4. 在找到的 UIView 中,您可以再次获取所有 subview [view subviews]; 并使用 [object isKindOfClass:[UITableView class]];找到需要的表;
  5. 您可以使用对在委托(delegate)方法中找到的UITableView 的引用来确定调用委托(delegate)方法的表。例如:在- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 你需要检查的方法 tableView

关于ios - 当 View 加载到一个 xib 文件中时选择特定的 UIView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19997699/

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