【问题标题】:THEOS/iPhone Jailbreaking programming - How should I hide a View from the ViewController?THEOS/iPhone 越狱编程 - 我应该如何从 ViewController 中隐藏视图?
【发布时间】:2012-12-09 23:42:19
【问题描述】:

我正在尝试编写 Cydia 的调整程序,并且应该在加载和隐藏视图时挂钩一个 viewcontroller 类 - 我尝试了以下方法:

调整.xm:

%hook ScoresViewController

- (void)viewWillAppear:(BOOL)fp8 {
    %orig;

    self.view.hidden = YES;
}

%end

但不幸的是,当尝试使用 THEOS “制作” Tweak 时,我得到以下信息:

Making all for tweak scoresenhancer...
Preprocessing Tweak.xm...
Compiling Tweak.xm...
Tweak.xm: In function 'void       _logos_method$_ungrouped$ScoresViewController$viewWillAppear$(ScoresViewController*, objc_selector*, BOOL)':
Tweak.xm:49: error: request for member 'view' in 'self', which is of non-class type 'ScoresViewController*'
Tweak.xm: In function 'void _logos_method$_ungrouped$ScoresViewController$viewWillAppear$(ScoresViewController*, objc_selector*, BOOL)':
Tweak.xm:49: error: request for member 'view' in 'self', which is of non-class type 'ScoresViewController*'
lipo: can't figure out the architecture type of: /var/tmp//ccFsVzMR.out
make[2]: *** [obj/Tweak.xm.o] Error 1
make[1]: *** [internal-library-all_] Error 2
make: *** [scoresenhancer.all.tweak.variables] Error 2

感谢您的帮助。 我还想了解如何访问自定义类的 ivars(即:ScoresViewController)。

【问题讨论】:

    标签: jailbreak cydia theos


    【解决方案1】:

    没有任何东西告诉编译器 ScoresViewController 是 UIViewController 的后代。您可以在这里做几件事。

    [(UIViewController *)self view].hidden = YES;
    

    @interface ScoresViewController : UIViewController @end
    ...
    self.view.hidden = YES;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-11
      • 2012-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多