小编Jak*_*lář的帖子

用Swift语言替换#ifdef

在C/C++/Objective-C中,您可以使用编译器预处理器定义宏.此外,您可以使用编译器预处理器包含/排除代码的某些部分.

#ifdef DEBUG
    // Debug-only code
#endif
Run Code Online (Sandbox Code Playgroud)

Swift中有类似的解决方案吗?

xcode preprocessor preprocessor-directive swift

697
推荐指数
15
解决办法
23万
查看次数

如何根据文本长度计算UILabel宽度?

我想在UILabel旁边显示一个图像,但是UILabel有可变的文本长度,所以我不知道在哪里放置图像.我怎么能做到这一点?

objective-c uikit uilabel ios swift

137
推荐指数
7
解决办法
12万
查看次数

解析URL字符串以获取键值的最佳方法是什么?

我需要解析像这样的URL字符串:

&ad_eurl=http://www.youtube.com/video/4bL4FI1Gz6s&hl=it_IT&iv_logging_level=3&ad_flags=0&endscreen_module=http://s.ytimg.com/yt/swfbin/endscreen-vfl6o3XZn.swf&cid=241&cust_gender=1&avg_rating=4.82280613104
Run Code Online (Sandbox Code Playgroud)

我需要将NSString分成像cid=241和的部分&avg_rating=4.82280613104.我一直在这样做,substringWithRange:但值以随机顺序返回,因此混淆了它.是否有任何类允许轻松解析,您基本上可以将其转换为NSDictionary,以便能够读取键的值(例如ValueForKey:cid应该返回241).或者是否有另一种更简单的方法来解析它而不是使用NSMakeRange获取子字符串?

parsing cocoa-touch objective-c ios swift

73
推荐指数
7
解决办法
8万
查看次数

禁用iOS 13中呈现的视图控制器的交互式解雇

iOS 13为模态呈现的视图控制器引入了modalPresentationStyle .pageSheet(及其兄弟姐妹.formSheet)的新设计…

iOS 13中的新滑动模态演示

…我们可以通过向下滑动显示的视图控制器来消除这些页面(交互式消除。尽管新的“拉动关闭”功能非常有用,但可能并不总是令人满意。

问题:我们如何关闭交互式解雇? -请记住,我们保持演示文稿样式不变。

uiviewcontroller uikit modalviewcontroller ios ios13

49
推荐指数
5
解决办法
1万
查看次数

更新到1.0.0后cocoapods link_with出错

我今天更新了cocoapods到1.0.0版本.我更新pod时得到了这个字符串:

[!] Invalid Podfile file: [!] The specification of link_with in the Podfile is now unsupported, please use target blocks instead..

我已经删除了podFile中的link_with,但我无法构建项目,因为我有很多Match-O-Linkers.任何人都知道我应该如何解决这个问题?

这是我的Podfile现在:

source 'https://github.com/CocoaPods/Specs.git'

platform :ios, '8.0'
inhibit_all_warnings!


pod 'pop', '~> 1.0'
    pod 'AFNetworking', '~> 1.3'
    pod 'SDWebImage', '~> 3.7'
    pod 'GoogleAnalytics', '~> 3'
    pod 'ARAnalytics' , :subspecs => ["Crashlytics", "Amplitude", "DSL"]
    pod 'FBSDKCoreKit', '~> 4.10.1'
    pod 'FBSDKLoginKit', '~> 4.10.1'
    pod 'FBSDKShareKit', '~> 4.10.1'
    pod 'Google/SignIn'
    pod 'Branch'

    pod 'Leanplum-iOS-SDK'

    pod 'Fabric', '1.6.7'
    pod 'Crashlytics', '3.7.0'
    pod 'TwitterKit'
    pod …
Run Code Online (Sandbox Code Playgroud)

xcode ios cocoapods

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

与新Apple Music应用程序中相同的动态状态栏

是否可以statusBar在新的Apple Music应用程序中进行动态着色?

在此输入图像描述

编辑:

iOS 8.4中的新Apple Music应用程序具有此功能.

  • 打开应用程序.
  • 选择并播放歌曲(状态栏为白色)
  • 向下滑动播放器控制器以查看"我的音乐"控制器(它有黑色状态栏,也许您将不得不返回导航层次结构).
  • 现在只需向上/向下滑动即可查看动态状态栏更改.

编辑2:

Apple文档似乎没有让我们现在使用它(iOS 8.4).将来可能会有iOS 9.

编辑3: 似乎iOS 9还没有.

user-interface dynamic objective-c statusbar ios

19
推荐指数
1
解决办法
1734
查看次数

首选大标题和RefreshControl不能正常工作

我正在使用本教程来实现一个pull-to-refresh行为RefreshControl.我正在使用Navigation Bar.使用普通标题时,一切都很好.但是,当使用"首选大标题"时,它无法正常工作,您可以在以下视频中看到.谁知道为什么?视频之间的唯一变化是故事板检查"首选大标题".

随着 标题正常

xcode uinavigationbar uitableview uirefreshcontrol swift

16
推荐指数
3
解决办法
3901
查看次数

ARC中"副本"的作用是什么

关键字copy在ARC中的作用是什么

我觉得copy(关键字)可在ARC使用,而retainrelease不能使用.而且copyARC中的作用是否copy与MRC中的作用相同?如果是的话,确实在ARC中copy获得retainCount+1?

我看过有关ARChe的mike ash博客说:

您需要显式复制作为id参数传递的块:  

 [myArray addObject: [^{ DoSomethingMagical(); } copy]];
Run Code Online (Sandbox Code Playgroud)

但是当我测试这样的代码(不使用copy)时,它的效果也很好.

NSArray *array = [[NSArray alloc] initWithObjects:^{NSLog(@"hahaha");}, nil];

[self test:[array objectAtIndex:0]];

- (void)test:(void (^)(void))completion
{
        completion();
}
Run Code Online (Sandbox Code Playgroud)

是否意味着copy在用作id类型时不需要阻止?

copy objective-c ios automatic-ref-counting

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

如何在应用处于离线状态时使用Alamofire获取缓存响应?

在我获得response通过Alamofire后,在某些情况下,实现数据库自己管理本地存储(文件等)可能有点矫枉过正.

我知道Alamofire requestCachePolicy并且它已经缓存了响应(基于cache-controls max-age),但这更多地与减少请求数量/改善在线体验有关.

但是当我通过Alamofire没有连接时,是否可以使用缓存的响应? (Alamofire是否提供某种方便的方法来处理这个问题)

caching ios nsurlrequestcachepolicy swift alamofire

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

将核心数据属性类型从Integer32更改为String

我之前处理过轻量级迁移以及映射基本更改,但是我已经google了,并且没有找到类似的情况,其中实体名称保持不变,但属性类型正在从int更改为string(我认为很容易做到的事情)

我认为通过继承NSEntityMigrationPolicy,我在正确的轨道上,然后我将mappingmodel中的自定义策略字段设置为此子类(即使在Xcode重新启动后它也没有自动完成...)

在此输入图像描述

但我发现createDestinationInstancesForSourceInstance没有被调用 在此输入图像描述

现在,因为我正在处理自定义映射模型和策略,我是否还应该推断映射模型,但在持久存储中自动关闭迁移?

NSDictionary *options = @{NSMigratePersistentStoresAutomaticallyOption:@NO,
                          NSInferMappingModelAutomaticallyOption:@YES};
Run Code Online (Sandbox Code Playgroud)

任何帮助是极大的赞赏!

我真的希望在属性映射表达式中我可以做一些像$ source.incrementer.string :)

当前映射

migration core-data objective-c ios

5
推荐指数
1
解决办法
2697
查看次数