Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Article information
RevisionsShow article in Markdown
Report article
Help us understand the problem. What is going on with this article?

This post is Private. Only a writer or those who know its URL can access this post.

@haranicle

Swiftについて聞きたいこと (jiyugaoka:Swift? #0)

More than 5 years have passed since last update.

UIAlertView問題

  • iOS8からUIAlertViewがDeprecated
  • UIAlertControllerはiOS8later
  • みんなどうしてるの???

背景

  • iOS7以降対応
  • 既存コードはUIAlertView or BlocksKitを使って書かれている

対応策 1 きにせずUIAlertViewを使う

  • いまのところ問題なく動くぽい
  • Swiftだとクラッシュする?

Objective-C - iOS8でのダイアログ表示:廃止になるUIAlertViewと推奨されているUIAlertControllerのメリット - Qiita

対応策2 バージョン分岐

  • iOS7ではUIAletView
  • iOS8ではUIAlertController

対応策3 ラッパークラスを作る,使う

対応策4 そんなの関係ねえ!

  • 独自のUIAlertControllerを作る

ObjCの__blocksってなに

  • コンパイラに特別な取り扱いをするように伝えるためのもの
  • 普通は、blocks内で使用する変数は、コピーされる
    • blocks内で変数を変更しても変更が適応されない
  • __blocksをつけるとblocks外でも、blocks内で変更した結果を使用できる

Swiftは__blocks付いてるのがデフォルトの挙動

なんで違うの?

ここで調べようと思ったけど、どこ調べたらいいかわからない..
https://github.com/apple/swift

これどうやるのシリーズ

いま保存されてるUserDefaultsのキー一覧を取得する

class func keysInUserDefaults(prefix: String) {
    var array: [String] = []
    let defaults = NSUserDefaults.standardUserDefaults()
    let serviceActivationDict = defaults.dictionaryRepresentation().reduce { (keyAndValue) -> Bool in
        array.append(keyAndValue.0)
    }
}

リストに書かれているリポジトリの情報をすべてGitHubから取得して、Realmにぶち込む

  • dispatch_groupで全部のリポジトリの情報を受け取れるのを待ってる
    • これって正しい? もっといい方法ある?
  • こんなふうに一気に大量にサーバにリクエスト投げたいことってたまにあるよね?
  • そもそもAPIの設計が悪い?(もしGitHubのAPIを自由につくれるならどうしたらいい?)

メモ

property

  • newValueの謎
  • conputed propertyに直接アクセスしたらどうなる?
  • lazyなstored propertyに直接アクセスしたらどうなる?
  • Swiftに直接アクセスある?

open source swift

Article information
RevisionsShow article in Markdown
Report article
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
Article information
RevisionsShow article in Markdown
Report article
Help us understand the problem. What is going on with this article?