マガジンのカバー画像

Swiftでいこう!

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

#programing

Customize views - SwiftUI でプログラミング - 2

Use Int to display temperatures Text("Mon")以外に最高気温と最低気温の表示をするためにText()が使われているところが2箇所あるので追加します。 数値が入るのでそのままでは表示することはできないので、文字に変換して表示できるようにします。 まずはプロパティ(変数)を追加します。 型が"Int"(整数)であることに注目します。このままText()にはいれられません。理由はText()は文字を入れるものであるからです。 入れる

SwiftUIを初めてみよう!

初めの一歩はやはりアップルの公式サイトが良いかも。 Developperのサイトです。さらにSwiftUIについては "Develop"のタブにはいります。そしてSwiftUIのタブへ SwiftUIの概要がのページとなります。 したにスクロールしていくと 左端にチュートリアルのリンクがあるのでそれをクリックすると 最近Xcode15対応となり少し手を加えてあるようです。ここで全体、ios,macOS,watchOSのチュートリアルをみることができます。 12/

Swiftでいこう! - 楽しくハロー!

MacでもiPadでもたのしくプログラミング! MacではもちろんXcode。だけでなく今はiPadのSwift PlaygroundsもMacアプリとして使えるようになっています。 XcodeのPlaygroundもありますが、お手軽さではiPadのPlaygroundsの方が良いと思います。 ツールも用意され、好きな時に好きなだけできるようになっていますが、アップル公式のチュートリアル、ドキュメントも充実していて、これを使わないてはないと思います。 言語の説明、サ

SwiftUIでいこう! - macOS App (2)

Macアプリの作成なのでiPhoneなどにはないメニューバーの作り方を参考サイトを見ながら実際に動かしてみます(Mac版Swift Playgrounds: Playgrounds:.appで実行します)。 デフォルトでできている以下コードにモディファイアをつけてメニューを操作します。 struct MyApp: App { var body: some Scene { WindowGroup { ContentView()

SwiftUIでいこう! - macOS App (1)

Swift Playgrounds 4.1( MacではPlaygrounds.app )となって Xcodeを使わずMac アプリも作れるようになったので試しに参考サイトを見ながら作ってみます。 まずは基本形 struct ContentView: View { var body: some View { NavigationView{ ListView() MainView()

Macで簡単Swift!

Swift Playgroundsです。最近Mac版がアップデートされますます使い勝手がよくなりました。Xcode使わなくてもアプリがストアに出せるようにもなりました。(バージョンが4.1 にあがってMac版でもSwiftUIでのアプリ開発ができるようになりました!)iPhone、Macアプリが作成できます。Xcodeにも移行できるのでさらに他のものにも転用できそうです。 アプリとしては iPad版 Swift Playgrounds Mac版 Swift Playgr

SwiftUIをはじめてみよう! - レイアウト(2)

ざっくりとしたレイアウトはVStackなどを使ってできますが、もう少し細かい設定で好きな場所に配置したい場合があります。 frame(width:height:alignment:)表示のサイズを指定することができます。 指定できるのは 実際の表示ですが struct ContentView: View { var body: some View { VStack { Ellipse() .fil

SwiftUIをはじめてみよう! - レイアウト(1)

SwiftUIでは複数のView を組み合わせて表示させるためにいくつか仕組みが用意されています。 VStack 縦方向に表示できるようにできます。 公式サイトの例示です。縦方向に文字が連続して表示されます。 VStack( alignment: .leading,spacing: 10 ) { ForEach( 1...10, id: \.self ) {

Swiftでプログラミング-Access Control

アクセス制御は、他のソースファイルやモジュールのコードからコードの一部へのアクセスを制限します。この機能を使用すると、コードの実装の詳細を非表示にし、そのコードにアクセスして使用できる優先インターフェイスを指定できます。 特定のアクセスレベルを個々の型(クラス、構造、列挙)、およびそれらの型に属するプロパティ、メソッド、イニシャライザー、および添え字に割り当てることができます。プロトコルは、グローバル定数、変数、および関数と同様に、特定のコンテキストに制限できます。 Sw

Swiftでプログラミング-Memory Safety

デフォルトでは、Swiftは危険な動作が発生を防ぐようにコードを打てるようになっています。 たとえば、Swiftは、変数が使用される前に初期化し、割り当てが解除された後にメモリにアクセスしないように、配列であるば範囲外のエラーがないかチェックしています。 Swiftではメモリ内の場所を変更するとき、そのメモリへの排他的アクセスを要求することにより、メモリの同じ領域への複数のアクセスが競合しないようにします。 Swiftはメモリを自動的に管理するため、ほとんどの場合、メモリへ

SWiftUIでいこう! - Timer.publish処理 スタート、ストップ

How to use a timer with SwiftUIとCustom Timer With Background Fetch Using SwiftUI - StopWatch Using SwiftUI - SwiftUI Tutorialsを参考に 単純なタイマーを作ります。XcodeのPlaygroundで実行できるようにします。基本的な形は以下でSwiftUIで組んでいきます。表示されるのはボタンのみ、ボタンを押せばコンソールにカウントダウンの数字が出てくる

Swiftでプログラミング-Automatic Reference Counting

Swiftは、自動参照カウント(ARC)を使用して、アプリのメモリ使用量を追跡および管理します。 ほとんどの場合、これはSwiftでメモリ管理が「正しく機能する」ことを意味し、メモリ管理について自分で考える必要はありません。 ARCは、クラスインスタンスが不要になると、クラスインスタンスが使用していたメモリを自動的に解放します。 ただし、場合によっては、ARCでメモリを管理するために、コードの各部分間の関係に関する詳細情報が必要になります。 この章では、これらの状況について

SWiftUIでいこう! - Timer.publish処理

参考サイトを見ながらコードを書いて行きます。簡単にするためで見た目の部分は省いています。 大事なタイマーの部分です。 let timer = Timer.publish(every: 1.0, on: .main, in: .common).autoconnect() このペアになるのが、 .onReceive() となります。そして、今現在の年月日、時刻を取得します。 @State var currentTime:Date = Date() これを Te

Swiftでプログラミング- Opaque Types

不透明な戻り型を持つ関数またはメソッドは、その戻り値の型情報を非表示にします。 関数の戻り型として具体的な型を提供する代わりに、戻り値はサポートするプロトコルの内容が記述される場合があります。 戻り値の基になる型はプライベートのままである可能性があるため、型情報を非表示にすることは、モジュールとモジュールを呼び出すコードとの分けることが出来ます。 型がプロトコル型である値を返すのとは異なり、不透明(OPAQUE)型は型IDを保持します。コンパイラは型情報にアクセスできますが、