创建 UIView 越狱调整
Posted
技术标签:
【中文标题】创建 UIView 越狱调整【英文标题】:Creating a UIView jailbreak tweak 【发布时间】:2014-04-18 17:44:35 【问题描述】:我正在尝试使用 iosOpenDev 和徽标模板开发越狱调整。
当用户转到 Springboard 时,我正在尝试创建一个 UIView。 (我相信Springboard Class是SBUIController
并且我认为方法是- (void)finishLaunching
)。
有什么方法可以让我以图形方式设计 UIView(在创建应用程序时使用情节提要或类似的东西),然后我将如何将其插入代码以使其显示。不是作为应用程序,而是作为跳板上的独立 UIView。任何帮助将不胜感激。
谢谢
【问题讨论】:
【参考方案1】:是的,您可以使用界面生成器创建自定义 UIView
或 UIViewController
,然后从您的调整中加载它。
为此,您需要:
-
将视图的 *.nib 文件复制到
/System/Library/CoreServices/SpringBoard.app/
。
调用NSBundle
方法-(NSArray*)loadNibNamed:(NSString*)name owner:(id)owner options:(NSDictionary*)options
。
从调整内部加载和呈现视图或视图控制器并没有什么特别之处。在你的情况下 - SpringBoard 调整。把它想象成你是 SpringBoard,你的代码就是 SpringBoard 的代码。这意味着您可以使用与普通 iOS 应用程序相同的 API。 NSBundle
加载您的 nib,UIViewController
显示您的视图控制器,UIView
将您的视图添加为另一个视图的子视图等。在此之前您唯一需要做的就是在 SpringBoard 中找到视图或视图控制器您需要并复制 SpringBoard 目录中的资源。
我就是这样做的。我有一个相机应用程序调整,它可以修改现有的 UI,并且可以加载我在 Interface Builder 中创建的自定义视图。没什么特别的 - 加载笔尖,呈现,一切正常。
【讨论】:
谢谢!这很有帮助!另外,您在网上找到的任何源代码可以帮助我吗?我一直在寻找,但没有找到:( github上有很多项目。除此之外,我不知道你在哪里可以找到有用的东西。 如何将故事板制作成 .nib?我知道制作视图是一个 .xib 行吗? 没有尝试过故事板,但应该不会有太大的不同。UIStoryboard
具有以编程方式加载情节提要的方法。至于xib/笔尖。 *.xib 基本上是一个源代码。编译后你会得到 *.nib。您需要 *.nib,而不是 *.xib。与故事板相同 - 您需要编译 *.storyboardc 文件。将这些已编译的资源复制到 SpringBoard 目录中,并以编程方式实例化您的视图/控制器。以上是关于创建 UIView 越狱调整的主要内容,如果未能解决你的问题,请参考以下文章
iOS 7 越狱调整需要帮助将方法从一个标头拉到另一个标头的 %hook
创建新的持久性存储时崩溃(越狱的 iPhone 设备 4.1)