小编do *_*ter的帖子

如何获取字符串的最后4个字符?

我需要分隔一个字符串的最后4个字母.我怎么能分开呢?字符串的长度在变化.

例如:

var a = "StackOverFlow"
var last4 = a.lastFour //That's what I want to do
print(last4) //prints Flow
Run Code Online (Sandbox Code Playgroud)

string swift

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

如何从swift词典中删除键值对?

如果可能的话,我想从字典中删除一个键值对.

var dict: Dictionary<String,String> = [:]
var willRemoveKey = "SomeKey"
dict.removePair(willRemoveKey) //that's what I need
Run Code Online (Sandbox Code Playgroud)

dictionary swift swift2

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

如何在后台Swift中播放音频?

如你所见,我正在播放音频广播.但是,当我按下主页按钮退出应用程序流停止或我听不到.如何在后台继续流式传输并从锁定屏幕中进行监听?

ViewController.Swift

import UIKit
import AVFoundation
import MediaPlayer
import GoogleMobileAds


    class ViewController: UIViewController, GADInterstitialDelegate {

        @IBOutlet weak var exitMapButton: UIButton!
        @IBOutlet weak var radarMap: UIWebView!
        var interstitial: GADInterstitial!
        func createAndLoadInterstitial() -> GADInterstitial {
            var interstitial = GADInterstitial(adUnitID: "ca-app-pub-5378899862041789/2782958552")
            interstitial.delegate = self
            interstitial.loadRequest(GADRequest())
            return interstitial
        }

        func getAd(){
            if (self.interstitial.isReady)
            {
                self.interstitial.presentFromRootViewController(self)
                self.interstitial = self.createAndLoadInterstitial()
            }
        }
        @IBOutlet weak var ataturkButton: UIButton!
        @IBOutlet weak var sabihaButton: UIButton!
        @IBOutlet weak var esenbogaButton: UIButton!
        @IBOutlet weak var weatherButton: UIButton!
        @IBOutlet weak var statusLabel: …
Run Code Online (Sandbox Code Playgroud)

audio avfoundation ios swift

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

无法使用应用程序组访问NSUserDefaults

我正在开发一个应用程序和一个小部件,小部件需要从app获取数据.我已经使用以下代码在NSUserDefaults上进行读写.我也用于$(PRODUCT_BUNDLE_IDENTIFIER).widget小部件并$(PRODUCT_BUNDLE_IDENTIFIER)参考这篇文章.但是widget无法从app或NSUserDefaults获取数据.我怎样才能使它工作?

func addTask(name: String?) {
    let key = "keyString"
    tasks.append(name!)
    let defaults = NSUserDefaults(suiteName: "group.Mins")
    defaults?.setObject(tasks, forKey: key)
    defaults?.synchronize()

}
Run Code Online (Sandbox Code Playgroud)

///////

let defaults = NSUserDefaults(suiteName: "group.Mins")
let key = "keyString"

if let testArray : AnyObject = defaults?.objectForKey(key) {
    let readArray : [String] = testArray as! [String]
    timeTable = readArray
    timeTable = timeTable.sort(<)
    print("GOT IT")
    print("timetable: \(timeTable)")
}
Run Code Online (Sandbox Code Playgroud)

xcode nsuserdefaults ios swift ios-app-group

11
推荐指数
1
解决办法
8839
查看次数

如何转置字符串数组

我有一个txt,包括以下格式的一些数据.

AYGA:GKA:GOROKA:GOROKA:PAPUA NEW GUINEA:06:04:54:S:145:23:30:E:5282
AYLA:LAE::LAE:PAPUA NEW GUINEA:00:00:00:U:00:00:00:U:0000
AYMD:MAG:MADANG:MADANG:PAPUA NEW GUINEA:05:12:25:S:145:47:19:E:0020
Run Code Online (Sandbox Code Playgroud)

如何分隔用冒号(":")区分的每个项目以及如何将每个部分加载到数组中,如下例所示?

var array1 = ["AYGA", "AYLA", "AYMD"]
var array2 = ["GKA", "LAE", "MAG"]
var array3 = ["GOROKA", "", "MADANG"]
var array4 = ["GOROKA", "LAE", "MADANG"]
var array5 = ["PAPUA NEW GUINEA", "PAPUA NEW GUINEA", "PAPUA NEW GUINEA"]
var array6 = ["06", "00", "05"]
var array7 = ["04", "00", "12"]
var array8 = ["54", "00", "25"]
var array9 = ["S", "U", "S"]
var array10 = ["145", "00", "145"]
var array11 = …
Run Code Online (Sandbox Code Playgroud)

string swift

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

如何在swift中定义MPMediaItemPropertyArtwork?

我想添加在锁定屏幕上显示的封面图片.我该怎么做?我尝试了MPMediaItemPropertyArtwork但没有显示任何内容.是否存在我无法看到的覆盖方法并阻止锁定屏幕封面图像?

导入UIKit导入AVFoundation导入MediaPlayer

class ViewController: UIViewController {


    @IBOutlet weak var statusLabel: UILabel!
    @IBOutlet weak var playButton: UIButton!
    var player:AVPlayer = AVPlayer(URL: NSURL(string: "http://www.liveatc.net/play/ltba.pls"))

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        statusLabel.text = "Status: Not Playing"
        playButton.setTitle("Play", forState: UIControlState.Normal)



        if NSClassFromString("MPNowPlayingInfoCenter") != nil {
            let image:UIImage = UIImage(named: "playerBg")!
            let albumArt = MPMediaItemArtwork(image: image)





            var songInfo: NSMutableDictionary = [
                MPMediaItemPropertyTitle: "LiveATC",
                MPMediaItemPropertyArtist: "Istanbul Ataturk - LTBA",
                MPMediaItemPropertyArtwork: albumArt
            ]







            MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo = …
Run Code Online (Sandbox Code Playgroud)

xcode loops boolean ios swift

5
推荐指数
0
解决办法
1452
查看次数

如何找到两次之间的时间跨度?

我想计算剩余时间.我有一个完成时间.如何计算现在和结束时间之间的剩余时间?

我需要这样的东西

let date = NSDate()
let formatter = NSDateFormatter()
formatter.timeStyle = .ShortStyle
var now = formatter.stringFromDate(date) //prints 12.21 AM
var finishTime = "13:30 PM"

var remaining = now - finishTime //I want it to print 01:09 as remaining time
Run Code Online (Sandbox Code Playgroud)

swift

3
推荐指数
1
解决办法
3437
查看次数

如何阻止在UITextField上输入非英文字符?

我正试图阻止输入非英文字母UITextField.因此,我写了下面的方法.但它错误为"无法正常递减startIndex".我已经阅读了一些有用的Stackoverflow帖子,但所有帖子都是用obj-c编写的.如何阻止非英文字母?

func textField(textField: UITextField, shouldChangeCharactersInRange range: NSRange, replacementString string: String) -> Bool {
    let englishLetters = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"]
        let lastStringText = airportNameField.text?.substringFromIndex((airportNameField.text?.endIndex.advancedBy(-1))!)
        if englishLetters.indexOf(lastStringText!) == nil {
            airportNameField.deleteBackward()
    }
    return true
}
Run Code Online (Sandbox Code Playgroud)

swift

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