父类A有一个子视图B,而该子视图有另一个子视图C,这就是我要隐藏的代码或将代码应用于(C)
怎么样 ?
B是A的第三个子视图,C是B的第二个子视图。
他们是这样的:
| A
|| B“ UIView”
|| B“ UIView”
|| B“ UIView”
||| C
||| C(我想访问此)
||| C
我已经试过了%hook A
-(void)layoutSubviews {
for (C *view in subviews[2].subviews)
%orig;
view.hidden = YES;
%end
但没有运气。
最佳答案
我正在考虑的一种方法是执行subviews[0].subviews[0]...
直到获得所需的视图。其次,如果您必须多次应用代码,我建议您为该视图分配一个标签,然后再执行[UIView viewWithTag:xx],这样更加安全。
但是在大多数情况下,至少在我的项目中,存在捷径,例如一些委托或直接引用。只需显示FlexFlipboard浏览器并搜索所有内容即可。
关于ios - 如何 Hook subview 的 subview ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55551846/