小编Con*_*cks的帖子

使用UIApplicationShortcutItem启动

我正在为我的iOS 9应用程序快速实现一些3D触摸快速操作,我有一个奇怪的问题.当我的应用程序处于后台并且我使用快速操作启动时,一切都按计划进行.当我的应用程序完全死亡(即我从多任务菜单中杀死它),并且我使用快速操作启动时,应用程序崩溃.我无法调试这个,因为一旦我杀了应用程序,Xcode中的调试会话就会分离.有没有办法让我连接到应用程序进行正常调试,或者我的代码中是否有某些东西会导致它?提前致谢.

码:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool
{
    var launchedFromShortCut = false

    //Check for ShortCutItem
    if let shortcutItem = launchOptions?[UIApplicationLaunchOptionsShortcutItemKey] as? UIApplicationShortcutItem
    {
        launchedFromShortCut = true
        self.handleShortCutItem(shortcutItem)
    }

    return !launchedFromShortCut
}

func application(application: UIApplication, performActionForShortcutItem shortcutItem: UIApplicationShortcutItem, completionHandler: (Bool) -> Void)
{
    self.handleShortCutItem(shortcutItem)
}

func handleShortCutItem(shortcutItem: UIApplicationShortcutItem)
{
    //Get type string from shortcutItem
    if let shortcutType = ShortcutType.init(rawValue: shortcutItem.type)
    {
        //Get root navigation viewcontroller and its first controller
        let rootNavigationViewController = window!.rootViewController as? UINavigationController


        if …
Run Code Online (Sandbox Code Playgroud)

ios swift ios9 3dtouch

26
推荐指数
2
解决办法
7889
查看次数

XCode 6.3 Beta显示iOS 8.3b设备"不合格"

自去年夏天的第一个6.x测试版以来,我没有使用过XCode.今天我在iPhone 6上安装了最新的iOS测试版,并在开发人员门户网站上安装了最新的XCode测试版.我创建了一个带有8.3目标的新的单页swift应用程序,然后尝试在我的设备上启动它,但是XCode在构建菜单中将其显示为不合格.

不合格的设备

任何有关解决此问题的帮助将不胜感激.

iphone xcode ios swift

16
推荐指数
4
解决办法
9882
查看次数

从未显示添加到UIScrollView的UIRefreshControl

我决定在我的应用程序中使用UIScrollView而不是UITableView有很多原因.当我使用UITableView时,我能够添加UIRefreshControl,没有任何问题.但是,当我在UIScrollView上使用相同的代码时,没有任何反应.我已经尝试了几个第三方进修库,似乎都没有.任何帮助表示赞赏.

资源:

var scroll: UIScrollView!
var refreshControl: UIRefreshControl!

override func viewDidLoad()
{
    super.viewDidLoad()

    self.scroll = UIScrollView(frame: self.view.frame)
    self.scroll.contentSize = CGSize(width: self.view.bounds.width, height: 10)

    self.refreshControl = UIRefreshControl()
    self.refreshControl.attributedTitle = NSAttributedString(string: "Pull to refresh")
    //self.refreshControl.addTarget(self, action: "loadPostsIntoCards", forControlEvents: UIControlEvents.ValueChanged)
    self.scroll.addSubview(self.refreshControl)

    self.view.addSubview(self.scroll)

    //self.loadPostsIntoCards()
}
Run Code Online (Sandbox Code Playgroud)

loadPostsIntoCards方法执行我的API调用,并创建添加到UIScrollView的UIViews("cards").然后,我根据所有卡的总高度更改UIScrollView的contentSize.卡片添加完美,滚动视图按预期运行,但UIRefreshControl除外.

在此先感谢您的帮助!

uiscrollview ios uirefreshcontrol swift

10
推荐指数
1
解决办法
3315
查看次数

使用AVAudioEngine播放AVAudioPCMBuffer的音频

我有两个课MicrophoneHandler,和AudioPlayer.我已成功地使用AVCaptureSession以核定答案挖掘麦克风数据在这里,并和改装CMSampleBuffer,以NSData使用此功能:

func sendDataToDelegate(buffer: CMSampleBuffer!)
{
    let block = CMSampleBufferGetDataBuffer(buffer)
    var length = 0
    var data: UnsafeMutablePointer<Int8> = nil

    var status = CMBlockBufferGetDataPointer(block!, 0, nil, &length, &data)    // TODO: check for errors

    let result = NSData(bytesNoCopy: data, length: length, freeWhenDone: false)

    self.delegate.handleBuffer(result)
}
Run Code Online (Sandbox Code Playgroud)

我现在想通过扬声器播放音频通过转换NSData产生的上面AVAudioPCMBuffer,并用播放AVAudioEngine.我的AudioPlayer班级如下:

var engine: AVAudioEngine!
var playerNode: AVAudioPlayerNode!
var mixer: AVAudioMixerNode!

override init()
{
    super.init()

    self.setup()
    self.start()
}

func …
Run Code Online (Sandbox Code Playgroud)

audio ios avaudiosession swift avaudioengine

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

在El Capitan beta 5上提交应用程序时,xCode崩溃

注意:这看起来像是这个问题的一个骗局,但该问题中的解决方案都没有解决它.我几乎可以肯定这是一个elcap beta 5问题,因为它没有在beta 4上发生.

问题:当我尝试从组织者窗口上传新的构建到iTunes连接时,xCode崩溃了.

详细信息:它是xCode 6.4,App Store版本,而不是beta."提交到App Store","验证"和"导出"按钮都会导致崩溃.当我单击其中每个时,会出现选择开发团队的对话框,当我单击"选择"时,xCode崩溃.内部版本号高于上次提交,并且没有构建错误等.

我试图关闭除组织者之外的所有窗口,我尝试重新启动,并且我已尝试从开发门户网站获得测试版的6.4版本; 这些都不起作用.我没有尝试过xCode 7 beta,但这对我来说没用,因为我需要将构建提交给Test Flight.

我的应用程序的发布是时间敏感的,所以如果有人可以帮我找到解决方法,那将非常有帮助:)

iphone xcode ios osx-elcapitan

6
推荐指数
1
解决办法
1039
查看次数

将排列好的视图对齐到 UIStackView 的顶部

我有一个包含 7 个元素的垂直 UIStackView。这些元素的高度不足以填充整个视图,因此它们会根据distribution值进行间隔。我希望排列的视图堆叠在视图的顶部,顶部没有空间,底部有空白空间。如果可能的话,我还希望能够控制每个视图下方的间距。

我已经尝试了所有可用的分发选项,但没有一个能完成我想要做的事情。帮助表示赞赏!

更新:添加我想要的结果的图像以使其更容易理解

在此处输入图片说明

  • 视图具有可变的高度(没问题,我有这个工作)
  • 视图应该按照我添加它们的顺序出现(也可以工作)
  • 我想要的功能是:第一个视图锚定到堆栈视图的顶部,第二个视图锚定到第一个视图的底部,依此类推。

storyboard ios autolayout swift uistackview

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