LoginSignup
10
11

More than 3 years have passed since last update.

僕的Swiftを学ぶ上で勉強させてもらった記事まとめ

Last updated at Posted at 2019-02-01

2の2

AutoLayoutの制約
https://www.1915keke.com/entry/2018/08/30/160607

translatesAutoresizingMaskIntoConstraintsとは
https://qiita.com/ryusukefuda/items/ec04b743683c58958fc3

UIButtonの(type: .system)
https://teratail.com/questions/95256

UIButtonのコードの意味
https://qiita.com/osamu1203/items/9c5680d78d77146a9cfc

// 部品のコンポーネント化
UIStackViewのコードの意味
https://qiita.com/taka1068/items/69273f05d34cfbeb3679

・部品のコンポーネント化

2の3

let view = UIView()のUIView()とは
https://iphone-tora.sakura.ne.jp/uiview.html

logoImageView.contentMode = .scaleAspectFill
http://blog.officekoma.co.jp/2016/10/swiftuiimageviewcontentmode.html

NSMutableAttributedString
https://qiita.com/miyamotok0105/items/4fbf032127fe746270b9

NSAttributedString.Key
https://qiita.com/roba4coding/items/7a5decc7e4f6137fcc88

NSAttributedString.Key(updata)
https://developer.apple.com/documentation/foundation/nsattributedstring/key/1528839-font

・ロゴの中心配置

    // 文字をX軸方向に中央配置
        logoImageView.centerXAnchor.constraint(equalTo: view.centerXAnchor).isActive = true
    // 文字をY軸方向に中央配置
        logoImageView.centerYAnchor.constraint(equalTo: view.centerYAnchor).isActive = true

2の4

withRenderingMode(.alwaysOriginal)
https://qiita.com/nashirox/items/2229b82dd68c6cc64603

//X軸とY軸を指定
.centerXAnchor.constraint(equalTo: view.centerXAnchor).isActive = true
http://makoto1212.hatenablog.com/entry/2017/10/06/200000

addTarget(self, action: #selector(handleShowSignUp), for: .touchUpInside)
http://programming-beginner-memo.com/?p=20

_ = navigationController?.popViewController(animated: true)
http://chocoffee.cafeblog.jp/archives/8169412.html?1549065853#comment-1

・ViewControllerを簡単に行き来

    // window?.rootViewController = UINavigationController(rootViewController: LoginVC())

LoginVC上で白枠のナビゲーションが出てしまうので、それを隠す
navigationController?.navigationBar.isHidden = true

ボタンの addtargetに
let singUpVC = SingUpVC()
navigationController?.pushViewController(singUpVC,animated: true)

//popViewController 一つ前のviewに戻る
@objc func handleShowLogin(){
    _ = navigationController?.popViewController(animated: true)
}

2の5

guard
http://programming-beginner-memo.com/?p=398

guard let email = emailTextField.text else { return }の{ return }
https://www.sejuku.net/blog/32607

addTarger for: .editingChanged
テキスト
https://hajihaji-lemon.com/smartphone/swift/uitextfield_event/

localizedDescription
https://qiita.com/koitaro/items/b4aef035fad757d8ade4

変数をprintで出力する
print("(変数名)")

2の6

Delegate
https://techacademy.jp/magazine/15055

= UIImagePickerController() .delegate = self .allowsEditing = true
https://qiita.com/unicoonn1/items/1cd43b841bcdfc8762ae

metadata
https://firebase.google.com/docs/storage/ios/file-metadata?hl=ja

3の7

UINavigationController
https://github.com/mixi-inc/iOSTraining/blob/master/Swift/pages/day2/1-1_UINavigationController.md

viewControllers
https://github.com/mixi-inc/iOSTraining/blob/master/Swift/pages/day2/1-1_UINavigationController.md

configureNavController(unselectedImage: UIImage, selectedImage: UIImage, rootViewController: UIViewController =
UIViewController()) -> UINavigationController {

rootViewControllerとUIViewControllerの階層の関係性
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q11165980406

UICollectionViewFlowLayout
https://qiita.com/takehilo/items/d0e56f88a42fb8ed1185

collectionViewLayout: UICollectionViewFlowLayout()))
https://techlife.cookpad.com/entry/2017/06/29/190000

3の8

leftBarButtonItem
https://hajihaji-lemon.com/smartphone/swift/uinavigationitem/

UIBarButtonItem
https://iphone-tora.sakura.ne.jp/uibarbuttonitem.html

UIAlertController(title: nil, message: nil, preferredStyle: .actionSheet)
https://qiita.com/funafuna/items/b76e62eb82fc8d788da5

UIAlertAction
https://qiita.com/funafuna/items/b76e62eb82fc8d788da5

addAction

do try catch(try Auth.auth().signOut() の時の throw)
https://qiita.com/ika_tarou/items/534eb8ce7cd6dcebb5ca
https://qiita.com/koishi/items/67cf4d0f51c4d79f1d22

DispatchQueue.main.async
https://qiita.com/ShoichiKuraoka/items/bb2a280688d29de3ff18

UIApplication.shared.keyWindow?.rootViewController as?
http://dealforest.hatenablog.com/entry/2016/12/14/124555

3の9

observeSingleEvent
https://qiita.com/tfutada/items/12ec90ef8fa1b9f871ec

非同期
https://qiita.com/kiyodori/items/da434d169755cbb20447

文字列をキャスト
guard let dictionary = snapshot.value as? Dictionary else { return }

private
http://oropon.hatenablog.com/entry/2014/09/12/013711

register
https://qiita.com/takehilo/items/1145240bb3b72f7d0317

dequeueReusableSupplementaryView

UICollectionViewDelegateFlowLayout
https://qiita.com/takehilo/items/dc478d2182595b8ae332

numberOfLines

[NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 14)]
https://qiita.com/toshi586014/items/a24a8243e32b12887293

append
https://swift.tecc0.com/?p=505

attributedText

borderWidth
https://qiita.com/arthur87/items/a1aa46e9f498d85d6546

cgColor
https://qiita.com/mtfum/items/a4f42c646ac2805c3fd4

3の10

var username: String!
https://qiita.com/maiki055/items/b24378a3707bd35a31a8

Dictionary
https://yuu.1000quu.com/using_the_swift_of_dictionary

AnyObject
https://qiita.com/Kenya/items/7fcdf0249d94669ffb20

3の11

URL(string: urlString) else { return }
https://code.i-harness.com/ja-jp/q/19cf0b6

URLSession.shared.dataTask
https://github.com/mixi-inc/iOSTraining/blob/master/Swift/pages/day3/4-2_HTTP-request-basic.md

DispatchQueue.main.async
https://qiita.com/lumbermill/items/7553a6ace26019f08bc6

非同期でやる意味
https://dev.classmethod.jp/smartphone/iphone/swift-3-how-to-use-gcd-api-1/

imageCache
https://qiita.com/yasui83/items/73c31ddb72337e674fe3

引数
https://wp-p.info/tpl_rep.php?cat=swift-biginner&fl=r19

URL(string: urlString) else { return }

4の12

style: .subtitle
https://weblabo.oscasierra.net/swift-uitableview-2/

clipsToBounds
https://dev.classmethod.jp/smartphone/iphone/uiimageview-aspectfill-clipsubviews/

cellForRowAt
https://weblabo.oscasierra.net/swift-uitableview-1/

override func numberOfSections
https://qiita.com/Ryosuke-Hujisawa/items/c8164b41e5fd6bc5a9ef

separatorInset
http://mjk0513.hateblo.jp/entry/2017/03/31/005624

textLabel!.frame.origin.y - 2
https://iphone-tora.sakura.ne.jp/uikit_size.html

layoutSubviews
http://snoozelag.hatenablog.com/entry/2017/05/22/181048

UIEdgeInsets
http://d.hatena.ne.jp/corrupt/20111005/1317814836

4の13

observe
https://hawksnowlog.blogspot.com/2018/03/multiple-call-observe-method.html

reloadData
https://qiita.com/mag4n/items/bcdf1e88794317cf8c9c

didSet
http://www.cl9.info/entry/2017/09/30/220000

didSelectRowAt
http://mjk0513.hateblo.jp/entry/2017/07/01/220542

indexPath.row
http://chumix.hatenablog.com/entry/2013/09/18/134339

4の14

UICollectionView
https://dev.classmethod.jp/smartphone/iphone/ios6-uicollectionview/

collectionViewLayout: UICollectionViewFlowLayout()
https://techlife.cookpad.com/entry/2017/06/29/190000

navigationController?.pushViewController
https://qiita.com/superman9387/items/c006ced215352f28a7b9

4の15

updateChildValues
https://firebase.google.com/docs/database/ios/save-data?hl=ja

4の16

updateChildValues
https://firebase.google.com/docs/database/ios/save-data?hl=ja
https://qiita.com/imajoriri/items/f4080f67e08c0b529120

@escaping(Bool)
https://qiita.com/mishimay/items/1232dbfe8208e77ed10e

クロージャとは
https://techacademy.jp/magazine/14499

4の18

UITapGestureRecognizer
https://i-app-tec.com/ios/uigesturerecognizer.html
https://qiita.com/h_nagami/items/06a87514c49dd86c38ad

isUserInteractionEnabled
http://programming-beginner-memo.com/?p=13

addGestureRecognizer
https://qiita.com/h_nagami/items/06a87514c49dd86c38ad

オーバーライド
https://hajihaji-lemon.com/smartphone/swift/%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%AE%E7%B6%99%E6%89%BF/

numberOfRowsInSection
https://qiita.com/senseiswift/items/9b5476531a843b0e314a

TableView
https://qiita.com/senseiswift/items/9b5476531a843b0e314a

cellForRowAt
https://weblabo.oscasierra.net/swift-uitableview-1/
https://qiita.com/sasurai_usagi3/items/af8c70f8ae739b3282b6
http://programming-beginner-memo.com/?p=17
http://programming-beginner-memo.com/?p=15

4の19

childAdded
https://firebase.google.com/docs/database/unity/retrieve-data?hl=ja

FIRDatabaseReference
https://firebase.google.com/docs/database/ios/read-and-write?hl=ja

4の20

UIColor.lightGray.cgColor
https://qiita.com/mtfum/items/a4f42c646ac2805c3fd4

allObjects
https://developer.apple.com/documentation/foundation/nsset/1417653-allobjects

forEach

overried func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
https://i-app-tec.com/ios/tableview-cell.html

selectionStyle
https://qiita.com/takashings/items/36b820f09fb19edd7556

5の21

numberOfItemsInSection
http://shimada-k.hateblo.jp/entry/2014/02/15/235944

referenceSizeForHeaderInSection
https://qiita.com/akatsuki174/items/626fe4d71990694f946f
https://qiita.com/hanoopy/items/00387eb28879f003fa6d

viewForSupplementaryElementOfKind
http://www.irohabook.com/swift-uicollectionview-header

dequeueReusableCell
http://programming-beginner-memo.com/?p=15

as!
強制ダウンキャスト
https://qiita.com/entry909/items/3c4c9a20bce0c903dc39

minimumInteritemSpacingForSectionAt
minimumLineSpacingForSectionAt
https://qiita.com/robokunx/items/ed3bbb4edb94e226b8db

UITabBarController
https://qiita.com/_ha1f/items/1109fc80b8613a3780d4

func tabBarController(_ tabBarController: UITabBarController, shouldSelect viewController: UIViewController) -> Bool {
https://qiita.com/higan96/items/5ea742b59a48a34baa32

dismiss
Swift ポケットリファレンス
https://gihyo.jp/book/2018/978-4-7741-9617-6
p132

5の22

PHAsset.fetchAssets
http://www.cl9.info/entry/2017/09/25/145955

PHFetchOptions
http://himaratsu.hatenablog.com/entry/ios8/photos

fetchLimit
https://hajihaji-lemon.com/smartphone/swift/coredata-fetch/

NSSortDescriptor
http://seiya-orz.hatenablog.com/entry/2015/07/15/001705

DispatchQueue.global(qos: .background).async
https://qiita.com/lumbermill/items/7553a6ace26019f08bc6

PHImageManager.default
https://teratail.com/questions/136298

スクリーンショット 2019-04-13 21.06.49.png

=>シミュレーター内の、作ったアプリを削除する
写真へのアクセスを許可するメッセージが出る

5の24

UITextViewDelegate
https://secondflush2.blog.fc2.com/blog-entry-945.html

textViewDidChange
https://kawairi.jp/weblog/vita/201311189607

updateChildValues
https://firebase.google.com/docs/database/ios/read-and-write?hl=ja

NSUUID
https://qiita.com/motokiee/items/9e41b6aba0c6898d373d

putData
https://qiita.com/Yuuki_Takahasi/items/329680d1cd56190b4f00

5の25

init
https://www.sejuku.net/blog/34512

childByAutoId
https://qiita.com/waka-ka/items/3688a4d8120ab7de5dbd
https://firebase.google.com/docs/database/ios/save-data?hl=ja

updateChildValues
https://firebase.google.com/docs/database/ios/save-data?hl=ja

cellForItemAt
https://qiita.com/azuma317/items/bf1a687f912159297cb1

minimumInteritemSpacingForSectionAt
minimumLineSpacingForSectionAt

5の26

sort
https://swift.tecc0.com/?p=240

UICollectionViewController
http://programming-beginner-memo.com/?p=141

Double
https://qiita.com/makopy_inside/items/c739a0a9e95c9c561a78

TimeInterval
https://swift.tecc0.com/?p=180

5の27

collectionView
http://natsuapps.com/note/2012/09/ios6-collection-view-basic.html

5の28

FeedVCの//ロゴを変更した
https://qiita.com/fromage-blanc/items/29335b3f401136e2993e

6の36

lazy var
タップジェスチャーを使うときには、この変数にする必要がある。15:35/17:44

15の74

UILabel, UITextField, UITextView の違い
https://ja.stackoverflow.com/questions/2378/uilabel-uitextfield-uitextview-%E3%81%AE%E9%81%95%E3%81%84%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B

別講座 ver 2

intrinsicContentSize
https://qiita.com/shtnkgm/items/f0b189e4184fe6c90707

10
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
10
11