gpt4 book ai didi

ios - 编写 UIView 层次结构

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

我正在尝试编写一个文本文件,其中包含屏幕中包含的所有 View 的名称。例如我有一个 UIView,其中有 2 个 UIButtons,所以文件应该如下所示。

UIWindow
UIView
UIButton
UIButtonLabel
UIButton
UIButtonLabel
_UILayoutGuide
_UILayoutGuide

这就是我想要做的,但我无法实现上述层次结构。

-(void) writeViewHierarchyForView:(UIView *)aView inString:( NSMutableString *)str
{
//NSMutableString *str = [[NSMutableString alloc] init];
NSLog(@"title Text = %@", aView.titleText);
if(nil == aView.children){
[str appendString:@"\n"];
return;
}
else{
for(UIView *view in aView.subview){
[str appendString:@"\n\t"];
[str appendString:view.name];
NSLog(@"%@",view.name);
[str appendString:@"\t"];
[self writeViewHierarchyForView:view inString:str];
}
}
}

这不是我在任何项目中使用的东西,只是为了好玩。任何建议都会很棒。

最佳答案

您可能无法使用以下代码将应用程序提交到应用程序商店(这听起来像是您不想要的),因为它是未记录的私有(private) API,但您可以在调试中使用它:

NSLog(@"%@", [self.view valueForKey:@"recursiveDescription"]);

您还可以在 LLDB 控制台中使用 recursiveDescription 在断点处进行调试:

po [someView 递归描述]

关于ios - 编写 UIView 层次结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25685211/

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