你好Stacked-专家!
我的问题:如何从CLLocationDegrees值生成一个字符串?
尝试失败:
1. NSLog(@"Value: %f", currentLocation.coordinate.latitude); //Tried with all NSLog specifiers.
2. NSNumber *tmp = [[NSNumber alloc] initWithDouble:currentLocation.coordinate.latitude];
3. NSString *tmp = [[NSString alloc] initWithFormat:@"%@", currentLocation.coordinate.latitude];
Run Code Online (Sandbox Code Playgroud)
当我查看CLLocationDegrees的定义时,它清楚地表明这是一个双重的:
typedef double CLLocationDegrees;
Run Code Online (Sandbox Code Playgroud)
我在这里错过了什么?这让我发疯了...请帮忙拯救我的心灵!
在此先感谢您的问候.// Abeansits
我正在以编程方式创建我的视图层次结构,如下所示:
UIWindow* window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
UIViewController1* viewController1 = [[UIViewController1 alloc] init];
UIViewController2* viewController2 = [[UIViewController2 alloc] init];
UINavigationController* navigationController = [[UINavigationController alloc] init];
[navigationController setViewControllers:@[viewController1, viewController2] animated:NO];
[window setRootViewController:navigationController];
[window makeKeyAndVisible];
Run Code Online (Sandbox Code Playgroud)
两个VC都是从XIB加载的,在这两种情况下都使用autolayout.一切看起来都不错但是当我真的做了po [[UIWindow keyWindow] _autolayoutTrace]一件事时,我AMBIGUOUS LAYOUT在控制台中收到了一些令人担忧的警告:
*<UIWindow:0xc63bec0>
| *<UILayoutContainerView:0xd3d79b0> - AMBIGUOUS LAYOUT
| | *<UINavigationTransitionView:0xd3d8b60> - AMBIGUOUS LAYOUT
| | | *<UIViewControllerWrapperView:0xd566c00> - AMBIGUOUS LAYOUT
| | | | *<UIView:0xc66b290> - AMBIGUOUS LAYOUT
| | | | | *<UIView:0xc66b0e0> - AMBIGUOUS LAYOUT …Run Code Online (Sandbox Code Playgroud) 突然间,我通过Testflight和iTunes-sync进行的临时发布不再有效.使用ad-hoc构建配置分发的应用程序永远不会在设备上完全启动.它会立即崩溃并出现分段故障11.
这个问题的奇怪之处在于,在下面提到的所有设备上的调试版本可以完美地工作.这让我相信我的project.pbxproj中有些东西搞砸了.但是当我查看git-log时,我发现没有任何故障,唯一改变的是架构(ARCHS)和有效架构(VALID_ARCHS).
我是否正确地假设搞乱架构不应该在启动时但在构建过程中导致实际错误?
一些背景:
另外值得一提的是我安装了Xcode 4.4.1和4.5 GM,当我将GM升级到App Store中的GM时,它也删除了Xcode 4.4.1的备份.在那次打嗝之后我删除了所有版本的Xcode,重新启动并再次安装了4.4.1版(这是我可以为armv6构建的).
有关如何进行此调试的任何有用提示对我来说都非常有价值.
谢谢你的时间.<3
来自设备的控制台打印和崩溃日志:
- https://gist.github.com/3781018
如果需要,我可以添加更多日志.
当前环境:
- Xcode版本4.4.1(4F1003)
- Mac OS版本10.8.2
项目设置(pbxproj):
- https://gist.github.com/3780985
经过测试的设备:
- iPhone 3GS iOS 6
- iPhone 3G iOS 4.2.1
- iPad第二代iOS 5.1.1
- iPhone 4S iOS 5.1.1
- iPhone 4 iOS 6.0
- iPhone 4S iOS 6.0
更新
要继续进行调试,我就是这样做的:
1.跳过Testflight并使用老派的方式在iTunes中发布ad-hoc.失败
2.重新安装配置文件失败
2.在我的机器上创建一个新用户并重新安装Xcode.失败
3.从另一台机器构建.失败
4.将优化级别设置为:-O0 FAIL
尽管我确信没有任何代码被更改,但我没有看到其他合理的解释.所以我开始用git恢复项目,盯着我成功发布临时版本的那一天.令我恐惧的是,我注意到同样的分段错误正在跟随我的时间结构!
考虑到这一事实,只剩下一个动作; 一个非常强大的调试方式我称之为喷雾和祈祷.=)换句话说,我开始评论代码的各个部分,看看是否有任何不同,我完全惊讶它实际上做了.几个小时的禁用和启用我的应用程序的部分后,我找到了罪魁祸首:从未保留静态NSArray.我真正想到的是,自2010年以来,阵列的实际初始化看起来一直如此.那么为什么现在这突然导致内存错误呢?为什么静态分析仪没有警告我们呢?
我现在太精疲力竭地回答这些问题,我会尝试用更多细节更新问题,希望明天也能回答.
再一次,非常感谢迄今为止帮助过的人!<3
xcode memory-management segmentation-fault ad-hoc-distribution ios
SO上有很多问题已经解决了类似的问题,但没有一个问题可以回答我的确切类型.大多数答案涉及运行JS片段并重载警报方法:window.alert = function() {};
我遇到的问题是加载的网页(我无法控制内容)在整个页面的呈现完成之前打开警报.
因此,我无法使用:- (void)webViewDidFinishLoad:(UIWebView *)webViewdelegate方法来运行JS代码段.另外,运行相同的代码片段- (void)webViewDidStartLoad:(UIWebView *)webView对我没有任何帮助,因为它在加载DOM之前执行.
类似的问题:
有关于此的任何指示?
我试图在我的iPhone应用程序中执行某种层的动画.无论我做什么,我总能得到相同的结果:动画完成后,它会回到原来的位置.即使我设置removedOnCompletion为false也没有区别.
我在这里错过了什么?
提前致谢!
编辑:这个家伙真的需要帮助.我用CAKeyframeAnimation和CABasicAnimation对象创建动画,然后将它们添加到CAAnimationGroup我依次对着图层.动画按预期工作,但它总是快速恢复到原始状态.即使我设置removedOnCompletion = NO;了所有动画对象和动画组,情况也是如此.
有人请指出我正确的方向!我住在斯德哥尔摩地区,我会给你买一杯咖啡.=)以下新代码:
CABasicAnimation *leveloutLeafAnimation = [CABasicAnimation animationWithKeyPath:@"transform"];
leveloutLeafAnimation.removedOnCompletion = NO;
leveloutLeafAnimation.duration = 1.0;
leveloutLeafAnimation.repeatDuration = 20;
CATransform3D transformLeafToRotation = CATransform3DMakeRotation(0.0, 0.0, 0.0, 1);
CATransform3D transformLeafFromRotation = CATransform3DMakeRotation([self _degreesToRadians:270.0], 0.0, 0.0, 1);
leveloutLeafAnimation.fromValue = [NSValue valueWithCATransform3D:transformLeafFromRotation];
leveloutLeafAnimation.toValue = [NSValue valueWithCATransform3D:transformLeafToRotation];
//Create an animation group to combine the animations.
CAAnimationGroup *theAnimationGroup = [CAAnimationGroup animation];
//The animationgroup conf.
theAnimationGroup.delegate = self;
theAnimationGroup.duration = animationDuration;
theAnimationGroup.removedOnCompletion = NO; …Run Code Online (Sandbox Code Playgroud) 首先,终于有了对iPhone的NinePatch支持,感谢Tortuga 22团队的支持.不幸的是,我无法将他们的库添加到我的项目中.
如果我只是将源文件拖放到我的项目中,我会得到大量的"没有这样的文件或目录" - 错误.如果我将libNinePatch.a文件作为外部框架引用,我会得到相同的结果.
这样做的正确方法是什么?他们没有任何指示,所以我想必须有一个相当直接的方法来做到这一点.
提前致谢.
// Abeansits
我正在尝试使用ocmock.org上的说明将OCMock添加到我当前的项目中 .
libOCMock.a添加到我的测试目标中.Header Search Paths下Build Settings的测试目标.-force_load,PATH/TO/libOCMock.a并-ObjC以Other Linker Flags(也到了测试目标).#import <OCMock/OCMock.h>首先发生的事情是Xcode抱怨找不到标题.如果我继续尝试构建测试目标,我会收到错误:OCMock/OCMock.h找不到.
当我检查构建输出时,我可以看到它正在添加正确的搜索路径: -I/Users/username/Development/proj/iphone/frameworks/OCMock_2_0_1/headers
当我列出终端中的路径时,我可以清楚地看到那里的文件.
任何有关正确方向的帮助或指示都将不胜感激.<3
我有一个本地段控件,它在WKWebView中加载预定的 URL 。我想要实现的是WKWebView加载之间清除(空白)。
所以就在我发出真正的请求之前,我尝试加载:
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"about:blank"]];
[wkWebView loadRequest:request];
Run Code Online (Sandbox Code Playgroud)
我什至尝试加载一些空的 HTML 无济于事:
[wkWebView loadHTMLString:@"<html><body></body></html>" baseURL:[NSURL URLWithString:@"about:blank"]];
Run Code Online (Sandbox Code Playgroud)
这确实适用于UIWebView。关于这个有什么提示吗?
let nilClosure: (() -> Void)? = nil
let notNillable: AnyObject = nilClosure ?? 1
Run Code Online (Sandbox Code Playgroud)
为什么这不起作用?任何显示如何让Nil Coalescing运算符与闭包一起工作的示例表示赞赏.
我得到的错误是:
二元运算符'??' 不能应用于'(() - > Void'类型的操作数?和'Int''
ios ×5
iphone ×4
objective-c ×4
swift ×3
cocoa ×2
cocoa-touch ×2
xcode ×2
autolayout ×1
javascript ×1
nine-patch ×1
nslog ×1
nsstring ×1
ocmock ×1
swift2 ×1
uikit ×1
uiwebview ×1
wkwebview ×1