2

我为 编写了一个调整cydia,但它似乎不起作用。我使用Theos. 我从iosod 工具得到了一个标头转储,发现

`$` - (void)searchBarTextDidBeginEditing:(id)searchBarText;

SBSearchController类内部。这是我在 Tweak 中的代码。

%hook SBSearchController

- (void)searchBarTextDidBeginEditing:(id)searchBarText { %orig;

UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Tweak"
    message:@"Testing is running!"
    delegate:nil
    cancelButtonTitle:@"Ok"
    otherButtonTitles:nil];
[alert show];
[alert release];`

}

%end

我的 Makefile 看起来像这样

include theos/makefiles/common.mk  

Testing_FRAMEWORKS = UIKit  

TWEAK_NAME = Testing  

Testing_FILES = Tweak.xm    

include $(THEOS_MAKE_PATH)/tweak.mk \

一切都正确编译和安装,但在运行时,当我点击搜索栏并开始输入时,什么也没有发生。有人知道我做错了什么吗?

谢谢!

4

1 回答 1

1

请记住,由于这是一个委托方法,除非委托类实现了该方法,否则它不会被调用。您是否在处理此事件的应用程序上对此进行了测试?

尝试将一些日志记录添加到文件中,以便查看您的代码是否被调用。

于 2012-06-14T07:27:08.593 回答