如何挂钩子视图的子视图?

问题描述 投票:0回答:1

父类A有子视图B,子视图有另一个子视图C,这是我要隐藏或应用代码到(C)

怎么样 ?

B是A的第三个子视图,C是B的第二个子视图。

他们是这样的:

  1. | A
  2. || B“UIView”
  3. || B“UIView”
  4. || B“UIView”
  5. |||ç
  6. ||| C(我想访问它)
  7. |||ç

我已经试过了

%hook A

-(void)layoutSubviews {

for (C *view in subviews[2].subviews)

%orig;

view.hidden = YES;

%end

但没有运气。

ios objective-c theos cydia cydia-substrate
1个回答
0
投票

我想到的一种方式就是做subviews[0].subviews[0]...直到你得到你想要的视图。其次,如果您不得不多次应用代码,我建议您为该视图分配一次标签,然后再执行[UIView viewWithTag:xx],它会更安全。

但在大多数情况下,至少在我的项目中,有一个快捷方式,就像一些委托或直接引用它。只需显示FlexFlipboard浏览器并搜索所有内容。

© www.soinside.com 2019 - 2024. All rights reserved.