如何在运行时添加操作栏项?
我正在使用actionBarSherlock,我需要在事件发生时添加一些按钮(例如,从RSS中获取一些文本).我不能依赖固定的xml.
如何创建类似于iOS(iPhone/iPad)的Facebook应用程序的侧边栏?水平滑动手指时出现的侧边栏.有一个组件,或者只是一个UIView?
我刚刚发现了RestKit,它将成为我正在做的应用程序的重要部分.当时,我能够将它与核心数据集成,但还没有找到发送多个GET请求的最佳方式.
我需要做的是:
从以下地址获取数据:
http://url.com/api/banner/
http://url.com/api/category/
http://url.com/api/link/
Run Code Online (Sandbox Code Playgroud)
URL将始终采用以下格式:http://url.com/api/SOMETHING/
一旦所有请求完成后,我想运行的代码(如调用一个新的视图控制器).最好的方法是什么?
目前,这是我正在使用的代码:
- (id)init
{
self = [super init];
if (self) {
[self setupConnector];
[self setupDatabase];
[self setupMappings];
[self sendRequests];
}
return self;
}
- (void)setupConnector
{
// Initialize RestKIT
RKObjectManager *objectManager = [RKObjectManager managerWithBaseURL:[NSURL URLWithString:@"http://baseURL"]];
self.managedObjectStore = [[RKManagedObjectStore alloc] initWithManagedObjectModel:[[NLCoreData shared] managedObjectModel]];
objectManager.managedObjectStore = self.managedObjectStore;
}
- (void)setupDatabase
{
NSString *storePath = [[NLCoreData shared] storePath];
NSError *error = nil;
NSPersistentStore *persistentStore = [self.managedObjectStore addSQLitePersistentStoreAtPath:storePath fromSeedDatabaseAtPath:nil withConfiguration:nil options:nil …Run Code Online (Sandbox Code Playgroud) 我需要将字符串编码为UTF-16LE(稍后转换为sha1),但我遇到了一些问题.这是我试过的:
let utf16array = Array("password".utf16)
print(utf16array)
// [112, 97, 115, 115, 119, 111, 114, 100]
Run Code Online (Sandbox Code Playgroud)
但这正是我所期待的:
// [112, 0, 97, 0, 115, 0, 115, 0, 119, 0, 111, 0, 114, 0, 100, 0]
Run Code Online (Sandbox Code Playgroud)
使用utf8array也一样:
let utf8array = "password".utf8.map({ $0 as UInt8 })
// [112, 97, 115, 115, 119, 111, 114, 100]
Run Code Online (Sandbox Code Playgroud)
所以,这就是我所做的"修复"它:
var bytesArray:[UInt16] = []
for byte in utf16array {
bytesArray.append(byte)
bytesArray.append(0)
}
print(bytesArray)
// [112, 0, 97, 0, 115, 0, 115, 0, 119, 0, 111, 0, 114, 0, …Run Code Online (Sandbox Code Playgroud)