マガジンのカバー画像

Swiftでいこう!

602
楽しくプログラミング!Swiftはなんだか楽しい"ことば"です。
運営しているクリエイター

#Playground

Swiftで行こう!--SwiftUIもっと!7

次は"Form"を使ってみましょう!何が良いかということですがテーブル形式でデータを表示する。単にVStackで表示させるとすれば、単純に縦長に表示されるのみです。 var body: some View { VStack { Text("Hello") Text("Goodby") } } VStackをFormに変えてみます。 var body: some View { Form

Swiftで行こう!--SwiftUIもっと!6

次は"List"です。表ですね。表の中身についてもどうするかということが必要です。では、表の中身から決めていきます。 struct RestaurantRow:View{ var name:String var body: some View{ Text("Restaurant: \(name)") }} 表中の中身は変数nameを使ってテキストを入れ込む形になっています。 そして表ぐみです。具体的な表を作っていきます。 struct Cont

Swiftで行こう!--SwiftUIもっと!5

Playgroundを使ってやっていきます。 今回はボタンなどイベントの処理について試していきます。 import SwiftUIimport PlaygroundSupport// この場所にコードを書いていきます。let content = ContentView()PlaygroundPage.current.liveView = UIHostingController(rootView: content) 基本のコードです。 次スライドボタンです。 stru

Swiftで行こう!--SwiftUIもっと!4

ループを使いたい場合です。ForEachを使います。 struct ContentView: View { var body: some View { VStack(alignment: .leading) { ForEach((1...10).reversed()) { Text("\($0)…") } Text("Ready or not, he

Swiftで行こう!--SwiftUIもっと!3

レイアウトです。 UIKitでいう UIStackViewです。SwiftUIではVStack,HStack,ZStakです。 Vは縦、Hは横、Zは奥行きの設定をします。 単純に var body: some View { Text("Hello") Text("Hello") } こうかくとエラーが出ます。なんで縦に書きたい場合は VStack{ Text("Hello") Text("Hello")

Swiftで行こう!--SwiftUIもっと!2

続いていきましょう!画像の表示です。 struct ContentView: View { var body: some View { Image(uiImage:#imageLiteral(resourceName: "cosmos.jpeg")) }} Image(uiImage:#imageLiteral(resourceName: "cosmos.jpeg")) を記述すると画像が表示されます。これはPlaygroundでのコードです。 カス

Swiftで行こう--SwiftUI。動画を参考にやってみた。

ちょっと動画で説明されているのをみながらちょっと手軽にPlaygroundで画像など使わずテキストだけにしてやってみました。 この動画は@Stateを使って簡単に画面更新。あとうまく3項演算子を使って場合分けをして画面表示を変えてあります。 @State var isOn = false 最初にfalseと定義しておいてボタンを押したタイミングで self.isOn.toggle() でfalseを反転(toggle())させtrueにしています。 そのタイミン

Swiftで行こう!--SwiftUIもっと!

もう少し詳しくSwiftUIみていきます。 世界は広い!すごくよくまとめられて勉強になります。 自分でもPlaygroundで試しながら、確認していきたいと思います。 まずテキストの処理です。基本の形です。 import SwiftUIimport PlaygroundSupportstruct ContentView: View { var body: some View { Text("Hello!SwiftUI!!") }}let conte

Swiftで行こう!--バブルソートをwhileで

そのままのコードです。 func bubbleSort(_ inputArr:[Int]) -> [Int] { guard inputArr.count > 1 else { return inputArr } var res = inputArr let count = res.count var isSwapped = false repeat { isSwapped = false for index in

Swiftで行こう! -- Xcode Playground!のSources,Resources

Sourcesはあまり使わないですが使えばコードをわかりやるくなるのかな?と思い使おうと思った時に普通にファイルを入れても認識されず。あれっということで調べてみました。 Resoucesフォルダは画像とかを使う時に入れるフォルダなので割とわかりやすい。ついでにまとめておきます。 結論からいうと自動的に認識させるために必要なものは "public"と"init" がポイントみたいです。意外と初期化が大事なようです。 こんな感じでファイルを配置しました。 コードですが

Swiftで行こう!--SwiftUIで行こう!2

Creating and Combining ViewsをPlaygroundで完成させます。 本来であれば MapViewとImageViewの構造体をファイルを分けて作り最後にContentViewで全て合わせて作っていくところですが、Playgroundのsourceフォルダに入れても反応しませんので、一つのファイルでまとめてみます。 import SwiftUIimport MapKitimport PlaygroundSupport まず必要なライブラリをim

WWDC19を前に。

"Write code. Blow minds."と題して6/3より開催されます。開発者会議らしく、”コードで世間を驚かそう!”といった感じみたいです。 昨年を振り返っておきましょう! 2018年もやはり大きいのはiOS12ですかね。iOS12は古い機種にも優しい、ということでiPhone5sなどでもサクサク動くというところが素晴らしかったです。あと、iPhoneSEとかのハードの発表も噂されていましたが、ありませんでした。iOS12で使えるソフトのアップデートと新規追加

Swiftで行こう!- Timer!2

まず前回に引き続きですが、ちょっと追加した全コードです。 それで追加したコードですが、まず、ボタンです。ボタンを押すと、タイマーを止めます。"invalidate()"の命令でストップします。 import UIKitimport PlaygroundSupport// UIViewController(画面の部品)class ViewController: UIViewController { var timer: Timer! override

Swiftでいこう! -- playgroundでいこう!

まず、playgroundを新規作成しましょう。 "Get started playground"を選んで開きましょう。 まず、準備ですね。 import UIKitimport PlaygroundSupport そして、表示する土台を作っていい来ます。 let view = UIView(frame: CGRect(x: 0, y: 0, width: 200, height: 200)) let view 変数宣言します。viewを実体化していきます 設