小编For*_*ord的帖子

将一个类的实例转换为Objective-C中的@protocol

我有一个对象(UIViewController),它可能符合也可能不符合我定义的协议.

我知道我可以确定对象是否符合协议,然后安全地调用该方法:

if([self.myViewController conformsToProtocol:@protocol(MyProtocol)]) {
    [self.myViewController protocolMethod]; // <-- warning here
}
Run Code Online (Sandbox Code Playgroud)

但是,XCode显示警告:

warning 'UIViewController' may not respond to '-protocolMethod'
Run Code Online (Sandbox Code Playgroud)

什么是防止此警告的正确方法?我似乎无法self.myViewController像一个MyProtocol班级一样.

protocols objective-c

96
推荐指数
2
解决办法
3万
查看次数

可以在Cocoa/ObjC中"取消配对"蓝牙设备吗?

我已经IOBluetoothDevice在我的Mac/Cocoa应用程序中配对,并希望以编程方式"取消配对".也就是说,我想从"系统偏好设置"的"蓝牙"部分的左侧窗格中删除该设备.

我已经看过了[IOBluetoothDevice removeFromFavorites],但是只删除了设备"收藏夹"属性旁边的心脏图标 - 设备仍然列在左侧窗格中.

这可能通过Cocoa吗?

系统偏好设置的蓝牙部分

在上图中,我想以编程方式从左侧窗格中删除"Apple Mighty Mouse".

cocoa bluetooth objective-c iobluetooth

8
推荐指数
1
解决办法
1793
查看次数

我该如何在iOS中保护SQLite数据库?

我正在开发一款医疗保健iOS应用程序.我希望我的用户数据被加密,因此如果他们的iPhone被盗,小偷将无法访问他们的健康信息.合法所有者应该能够访问他们的信息(与这个问题不同).

我正在考虑使用SQLCipher加密整个数据库,并将SQLCipher密码放入Keychain.

这是一个好技术吗?

另外,我是否理解正确 - 因为一切都在设备上 - 一个坚定的黑客无论如何都能打破?

sqlite security iphone cocoa-touch objective-c

7
推荐指数
2
解决办法
1万
查看次数