0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Swift言語はじめました

Last updated at Posted at 2022-10-30

Rightです。

最近、iPhoneアプリを作成するために、Swift言語を学び始めた。
本記事では、Swiftで使用した文法やXcodeの機能についてまとめる。(随時更新)

1.Swiftの基本文法

本章では、Swiftの基本文法についてまとめる。

文字表示

Text(" ~~~~~~ ")
文字を表示する。
.font(.system(size: ***, weight: xxx, design: @@@))  //文字のフォント指定
.padding()  // 余白追加
.Spacer()  // 空白表示
Button{  } label: { Text(" ~~~~~~ ") }
ボタンを表示する。
.foregroundColor(Color.***)  //ボタンの文字色を変更
.background(Color.***)  //ボタンの背景色を変更
.frame(width:***, heght:***)  //ボタンの大きさを変更
.cornerRadius(radius:CGFloat)  //ボタンの角を丸くする(※必ず.frameの後ろに書く)
.lineLimit(1)  //表示行数を1行に制限する
.minimumScaleFactor(**)  //文字がフレームに収まらないとき係数**(0.0〜1.0)だけ縮小する
let ***: xxx
定数。(***は定数の名称)
xxxは型名。
var ***: xxx
変数。(***は変数の名称)
@Stateをつけると値が更新されるたびにView(画面)に反映される。
画面Aの@State付き変数を画面Bで更新する場合は@Bindingをつける。
※画面Aから画面Bへ@State付き変数を渡すとき、$をつけること。
xxxは型名。
VStack { ~~~~~~ }
縦方向に表示する。
HStack { ~~~~~~ }
横方向に表示する。
ZStack { ~~~~~~ }
画面を重ねて表示する。
Color.black  //背景色を黒にする。
.ignoresSafeArea()  //画面端にも背景色を適用する。

型名

配列
[[String]]:文字列の2次元配列
その他
CGFloat:座標やサイズを表す際に使用される専用の型。
UIScreen.main.boundsを代入することで高さ(.height)や幅(.width)を取得できる。
例)
let tmp: CGFloat = UIscreen.main.bounds.width
画面の横幅をtmpに格納。

条件分岐(if文)

if ***.contains(xxx) { ~~~~ } else if @@@.contains(xxx) { ~~~~ } else { ~~~~ }
配列***に配列xxxの要素が含まれている場合
上記満たさない場合、配列@@@に配列xxxの要素が含まれている場合・・・

繰り返し文(for文)

forEach (0..<5) { i in ~~~~~ }
5回~~~~~を繰り返す。
※SwiftUIでfor inは使用できないらしい・・・
forEach (***, id: \.self) { *** in ~~~~~ }
配列***の要素数だけ繰り返す。
※配列***がIdentifiableプロトコルに準拠していない場合に使用する。(id: \.self)

関数

func ***(xxx: String) -> Color { ~~~~~ }
関数名:***
仮引数名:xxx (上記例の場合、String型)
上記例の場合、@@@型(返却値の型)で値を返却する。

構造体

struct ContentView: View { ~~~~~ }
メイン処理
struct ***: View { ~~~~~ }
メイン処理の構造体から分けて処理を記述できる。

画像表示

Image(" ~~~~~~ ")
画像を表示する。
~~~~~~は画像名を入れる。
画像名:~~~~~~.png
※事前にXcodeの『Library』から画像を登録しておく。

リスト表示

list{ ~~~~~~ }
リストで表示する。
NavigationViwe {
 list {
  ******
 }
 .navigationTitle("~~~~~~")
}
リストのタイトル『~~~~~~』を表示する。

その他

result = number.truncatingRemainder(dividingBy: 1)
小数点以下を抜き出す
if number.truncatingRemainder(dividingBy: 1).isLess(than: .ulpOfOne) { ~~~ } else { ~~~ }
小数点以下が0の場合

コメントアウト

C言語と同じく以下の通り。

/* ~~~~~~~~~~~ */
// ~~~~~~~~~~~

2.Xcodeについて

本章では、Xcodeの操作方法・ショートカットキーについてまとめる。

操作方法

使用画像の登録
『Assets.xcassets』を選択する。
使用画像をドラッグ&ドロップする。

ショートカットキー

Control + i
一括インデント
(インデント揃えたい範囲を選択後、上記ショートカットキーを押す。)
Command + Control + e
ソースコード内の語句を検索する。

更新履歴

2022/12/30
0
1
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
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?