Swift 1.2でtouchesBeganメソッドのNSSetがSetへ変更されました

公開日: : 最終更新日:2016/02/10 iPhoneアプリ開発

20150802-085831.jpg

Swift 1.2で、touchesBegan・touchesMoved・touchesCancelled・touchesEndedなどのメソッドが変更となりました。

Swift 1.2でSetが使えるようになったためです。

    

スポンサード リンク

Swift 1.1までのtouchesBeganメソッド

Swift 1.1までのtouchesBegan・touchesMoved・touchesCancelled・touchesEndedメソッドは、以下のようになっていました。

override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
}

override func touchesMoved(touches: NSSet, withEvent event: UIEvent) {
}

override func touchesCancelled(touches: NSSet, withEvent event: UIEvent!) {
}

override func touchesEnded(touches: NSSet, withEvent event: UIEvent) {
}

    

Swift 1.2のtouchesBeganメソッド

Swift 1.2では以下のように、touchesのデータ型がNSSetからSet<Object>へ変更となっています。

override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {
}

override func touchesMoved(touches: Set<NSObject>, withEvent event: UIEvent) {
}

override func touchesCancelled(touches: Set<NSObject>!, withEvent event: UIEvent!) {
}

override func touchesEnded(touches: Set<NSObject>, withEvent event: UIEvent) {
}

    

タッチ座標の取得方法

Swift 1.1では、例えば以下の様なコードでタッチ座標を取得します。

if let touch = touches.anyObject() as? UITouch {
    // do something
}

    

Swift 1.2では、例えば以下の様なコードでタッチ座標を取得します。

if let touch = touches.first as? UITouch {
    // do something
}

    

@akio0911はこう思った。

個人的には、Setなのにfirstというメソッドでデータを取得するのが違和感あります。Setには順番がないはずなので・・・。

あと、Swiftにおけるコードの書き方はどんどん変わっていきますね。Objective-CからSwiftへの移行は早めに行ったほうが、手間がかからなそうです。

    

    

この記事が気に入ったら「いいね!」しよう

follow us in feedly

Feedlyで最新記事を購読

Twitterで更新情報をゲット!

LINEでご感想・ご要望お送りください!
(スマホでLINEを起動 > 友だち追加 > QRコード)

関連記事

I20160417-171311.jpg

Xcodeのブレークポイントで変数の中身を通知センターに表示してみる

Xcodeのブレークポイントの機能を使って、ブレークポイントを通過した時点での変数の中身を通知セ

記事を読む

I20151103-131550.jpg

iPhoneアプリ開発にオススメの本7選(初心者向け含む)2015年11月版

Xcode 7/Swift 2/iOS 9に対応した関連書籍が揃ってきたので、iPhoneア

記事を読む

20140807-182914.jpg

【アプリ開発】iOS 8とiOS 7でUIAlertController・UIAlertView・UIActionSheetを切り替えて使う方法

@akio0911です。今までお世話になったUIAlertViewとUIActionShee

記事を読む

iPhoneゲームを簡単に開発したいならこの本がオススメ!「Sprite Kit iPhone 2Dゲームプログラミング」

iPhoneゲームアプリを簡単に開発したいなら「Sprite Kit iPhone 2Dゲームプ

記事を読む

20141031-150402.jpg

アップルのベータテストサービス「TestFlight」が正式公開

アップルが先週の木曜、ベータテストサービス「TestFlight」を正式に公開しました。 Te

記事を読む

20150116-114410.jpg

プログラミング未経験者がSwiftの文法を学ぶのにオススメな本!「たのしいSwiftプログラミング」

楽しみにしていたSwiftの入門書「たのしいSwiftプログラミング」を読み終わったので、レビュ

記事を読む

20160509-200435

【Auto Layout】readableContentGuideを使わずに最大幅を定義する

iOS 9からUIViewにreadableContentGuideが追加されましたが、re

記事を読む

I20150805-182005.jpg

Swiftにおける関数型のエッセンスを学ぶために「関数プログラミング実践入門」を読み始めた

Swiftの関数型言語的な特徴についての話を各所で見るようになりましたが、自分は関数型言語の

記事を読む

20140901-120049

デザイン初心者な僕がデザイナーさんにそこそこ褒められるアプリアイコンを作った方法

デザイン初心者の僕がアプリアイコンを作ったら、本職のデザイナーさんにそこそこ褒められるという嬉しい体

記事を読む

I20160130-110811.jpg

【解決】Redundant conformance of ‘NSDate’ to protocol ‘Comparable’エラーが出た時の対処方法

アプリ開発中に「Redundant conformance of 'NSDate' to pro

記事を読む

I20170521-225453.jpg
東京駅八重洲口の「羊肉酒場 悟大」で網焼きジンギスカンを頂きました!

ゆうせいさんと株式会社 大庄さんからご招待頂き、悟大withサッポ

I20170514-165235.jpg
iPhoneと連携できる体重体組成計「Withings Body Cardio」を使ってます

ジムに通い始めて体脂肪率が落ち始めたのをキッカケに、iPhoneと

I20170507-155440.jpg
【派手髪】ハーレイクイン風の髪色に染めてもらいました

2016年10月20日、ハーレイクイン風の髪色に染めてもらいました

I20170504-173110.jpg
【メンズネイル】東京・新宿のネイルサロンでターコイズのホログラムネイルしてもらった

ネイルネタが1年分くらい溜まっているので、ちょっとずつ書いていこう

I20170502-010117.jpg
SNUGGのライトニングケーブルが耐久性高し。8ヶ月使ってますが断線の気配なし!

iPhoneの充電&転送ケーブルであるLightningケーブルっ

→もっと見る

PAGE TOP ↑