小编KPM*_*KPM的帖子

在故事板中的视图控制器之外的UIView

我遇到了一个问题,我无法在官方文档,Stackoverflow或Google上找到答案.

我是一位经验丰富的iOS开发人员,但却是Storyboards的新手.我想在当前的viewcontroller上实例化一个视图,一个视图,在NIB中,我会在viewController之外绘制并附加一个插座以在代码中引用它并调用类似addSubview:或类似的东西.绘制叠加层是有用的,或者在我目前的情况下,绘制一个用于MapView委托的标注视图.但我无法弄清楚如何在故事板中做到这一点.

我似乎无法在viewcontroller之外拥有一个视图,viewcontroller内的视图必须是控制器视图的子视图,或者根本不在Interface Builder中可见(当你拖动一个外部视图时,这是可以的在传统的NIB中,如果你需要调整它的最不详细的话,这是一个很大的问题).

关于做什么或在哪里看的暗示?谢谢.

xcode cocoa-touch storyboard ios

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

如何在SourceTree.app中设置你的头像?

我看到其他人的图像出现在提交消息的右侧.如何设置?

编辑:我使用的GUI工具是SourceTree mac版本.

git atlassian-sourcetree

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

如何将iPhone/iPad网络应用程序保持在全屏模式?

我有一个离线工作的HTML5 iPad应用程序.该应用程序基本上由4个html文件和3个aspx文件组成.我的缓存清单已设置为只有html文件可脱机使用,并且aspx文件需要网络连接.这一切都很棒!

现在,我已经到了我正在对应用程序进行最后润色并试图完成主屏幕图标,以全屏模式运行等等.我已经添加了我认为必要的元标记到一旦将应用程序添加到主屏幕,该应用程序最初将以全屏模式启动.我认为标签正确的原因是,如果我在html页面之间来回导航,应用程序将(正确)启动并保持全屏模式.我遇到的问题是当点击其中一个服务器(aspx)链接时,让应用程序保持全屏模式.

单击服务器链接(aspx)时,Mobile Safari将进入完整浏览器模式并打开一个新窗口.这种行为是不可接受的,我希望我在这里遗漏一些简单的东西.

以下是我在所有页面上使用的元标记(html + aspx):

  <meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0" />
  <meta name="apple-mobile-web-app-capable" content="yes" />
  <meta name="apple-mobile-web-app-status-bar-style" content="black" />
Run Code Online (Sandbox Code Playgroud)

希望这提供了解问题所需的所有必要信息.我在这里看到了其他链接,声明除了主页上标记的页面之外的任何页面都会导致某些人退出全屏模式.这不是我遇到的问题,所以我想开始一个新的讨论.再次,我觉得如果我在应用程序中有5个以上的html页面,它将继续保持全屏模式.在我的情况下,aspx页面是问题所在.

ios iphone-standalone-web-app

32
推荐指数
3
解决办法
4万
查看次数

在xcode 4中禁用滑动手势

有谁知道如何禁用Xcode 4中的滑动手势,导致您跳转到新文件?我发现更多次,这个手势导致我切换到无意中远离我正在扫描的文件(我想在上下滚动之前我很懒,所以我的手指也会水平移动).

macos xcode xcode4

18
推荐指数
2
解决办法
2221
查看次数

iOS全屏Web应用程序丢弃cookie?

我已经体验过,当您启动/退出保存到仪表板的Web应用程序(全屏模式)时,iOS4会丢弃Cookie.

是真的吗?有解决方法吗?

cookies mobile ios iphone-standalone-web-app

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

从其他应用程序访问Safari书签

我想知道如何从Mac OS X上的另一个Cocoa应用程序访问Safari书签,以一种安全可靠的方式.

您可能知道,浏览Safari书签有两种常见的机制:

  • 要么阅读Safari的Bookmarks.plist文件
  • 或使用SyncServices API.

但是,第一个是沙盒禁止(通过App Store分发是强制性的),第二个是自Mac OS X 10.7 Lion以来不推荐使用的.

我相信Apple弃用了SyncServices而支持iCloud同步,但我找不到任何允许访问书签的iCloud API(1).

有什么暗示在哪里看?Native Cocoa是首选,但欢迎使用任何不推荐使用的沙盒兼容解决方案.

谢谢.

(1)并且,老实说,通过互联网(因此需要互联网连接)在机器上检索同一台机器上的东西似乎......尴尬 - 但是,如果它是至少那样的方式将是一个潜在可能.

safari macos bookmarks syncservices icloud

13
推荐指数
1
解决办法
3054
查看次数

[__NSDictionaryI setObject:forKey:]:发送到实例的无法识别的选择器

我正在尝试将"dateTime"添加到我的字典中,如下所示:

Symptom Ranking: {
    5111ef19253b4a9150000000 = 1;
    5111f029253b4add4e000000 = 1;
    5111f036253b4a123d000001 = 1;
    5111f045253b4a404f000000 = 1;
}

NSLog(@"date selected: %@", [[self.datePicker date] description])

[self.results setObject:[[self.datePicker date] description] forKey:@"dateTime"];
Run Code Online (Sandbox Code Playgroud)

应用程序崩溃,我得到这个:

Symptom Tracker[43134:c07] -[__NSDictionaryI setObject:forKey:]: unrecognized selector sent to instance 0x7603990
2013-02-06 08:15:58.741 Symptom Tracker[43134:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSDictionaryI setObject:forKey:]: unrecognized selector sent to instance 0x7603990'
*** First throw call stack:
(0x171b012 0x1428e7e 0x17a64bd 0x170abbc 0x170a94e 0x521e 0x143c705 0x373920 0x3738b8 0x434671 0x434bcf 0x433d38 0x3a333f 0x3a3552 0x3813aa …
Run Code Online (Sandbox Code Playgroud)

nsdictionary foundation nsmutabledictionary ios

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

自定义UISlider外观

要自定义UISlider的视觉外观,您可以设置拇指和轨迹图像.部分轨道图像被拉伸到适当的位置.从文档:

可拉伸区域位于两个端盖区域之间.端盖定义图像的部分保持原样并且不被拉伸.可拉伸区域是端盖之间的1点宽区域,可以复制以使图像看起来更长.

现在我遇到的问题是我的可拉伸区域需要超过1点宽.(这是一种模式)不幸的是,1点宽度似乎在SDK中是硬编码的.

任何人都知道如何解决这个问题?或者我是否必须从头开始编写自己的滑块?

cocoa-touch uikit uislider ios

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

添加故事板视图作为以编程方式创建的视图的子视图

我创建了一个特殊的UIView类,它具有某些属性,我是以编程方式编写的,因为它通常是空白的,但有时会包含其他视图.我知道如果我以编程方式创建一个UIView,我可以做类似的事情[specialView addSubview: aView];

我的问题是我在故事板中创建了一个UIView,我需要在我的特殊视图中添加UIView作为子视图.我已经将它作为我的ViewController中的属性连接但是当我执行与上面相同的代码时,没有任何反应.思考?

xcode cocoa-touch storyboard uiview ios

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

检查swift中的NSError代码

我正在尝试检查Swift中的错误代码值,并发现自己对新的结构类型和转换有点困惑.

我想要做的只是在处理程序闭包中传递NSError对象,并通过将其与存储在CMError结构中的值进行比较来检查其代码类型.在Objective-C中,我只想写

[pedometer queryPedometerDataFromDate:now toDate:now withHandler:^(CMPedometerData *pedometerData, NSError *error) {
    BOOL isAuthorized = (error.code != CMErrorMotionActivityNotAuthorized);
}];
Run Code Online (Sandbox Code Playgroud)

在Swift中,当我写出我期望的等价物时

pedometer.queryPedometerDataFromDate(now, toDate: now) {(data:CMPedometerData!, error:NSError!) in
    let isAuthorised:Bool = (error.code != CMErrorMotionActivityNotAuthorized)
}
Run Code Online (Sandbox Code Playgroud)

我收到错误无法找到接受提供的参数的'!='的重载.这指向类型转换错误.确实CMErrorMotionActivityNotAuthorized是类型CMError,这是一个Swift结构.我似乎无法在这种CMError类型和Int类型之间进行转换error.code.

那么如何查看我的错误代码呢?


注1

如果我尝试分解并显式转换:

let errorCode:Int = (CMErrorMotionActivityNotAuthorized as Int)
let isAuthorized:Bool = (error.code != errorCode)
Run Code Online (Sandbox Code Playgroud)

我得到了荒谬的错误消息无法将表达式的类型'Int'转换为'Int'类型.


笔记2

文件说明CMError的定义是

struct CMError {
    init(_ value: CUnsignedInt)
    var value: CUnsignedInt
}
Run Code Online (Sandbox Code Playgroud)

在斯威夫特.在Objective-C中,它被定义为

typedef enum { …
Run Code Online (Sandbox Code Playgroud)

nserror core-motion swift

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