-
【iOSアプリ開発】Apple Developer Program・Certificate・Profileの更新手順まとめ
毎年1回だけしかやらない作業で、毎回やること忘れてしまうので、メモとして手順を残しておきます。 【Apple Developer Programのメンバーシップ更新】 期限が迫ると下の画像のように「もうすぐ期限切れるでー」と案内が来るので、メンバーシップを更新し... -
【SwiftUI】Linkビューの使い方を解説
Linkビューは、現在のビューから別の場所にナビゲートするために使用されます。 具体的には、ユーザーがタップしたときに指定した場所に遷移します。 【Linkビューの使い方】 Link("リンクテキスト", destination: URL(string: "リンク先の... -
【Swift】if文の書き方
【Swiftにおけるif文の構造】 Swiftのif文は以下のような構造を持ちます。 if 条件 { // 条件が真の場合に実行されるコード } else if { // 最初の条件が偽で、かつこの条件が真の場合に実行されるコード } else { // どの条件も満たされない場合に実行さ... -
【SwiftUI】NavigationStackの使い方を解説
NavigationStackビューは画面遷移やナビゲーションを管理するための便利な機能です。 iOS16から使えるようになったビューで、それまではNavigationViewが使われていました。 NavigationViewはiOS16から非推奨となっています。 【 NavigationStackの使い方... -
【SwiftUI】Pickerの使い方を解説
Pickerは、ユーザーがリストから選択できる選択肢を提供するためのUI部品です。 【Pickerビューの使い方】 Picker("タイトル", selection: $selectedOption) { View.tag(1) // 選択肢1 View.tag(2) // 選択肢2 View.tag(3) // 選択肢3 } Pick... -
【SwiftUI】Listの使い方を解説
Listビューは、データのリストを表示するためのViewです。 【Listビューの使い方】 List { 子View1 子View2 子View3 ・・・ } 単純にListの中にViewを列挙していくだけで、一覧を表示することができます。 struct ContentView: View { var body: some View... -
【SwiftUI】ZStackでViewを重ねる
TextやImageなどのViewを重ねて表示するにはZStackを使います。 Zは特に何かの単語の略ではなく、Z軸が奥行きを表すので、そのZが使われていると思われます。 【ZStackの基本的な使い方】 ZStack { 子View1 子View2 子View3 } ZStack内に最初に配置したビ... -
【SwiftUI】HStackでViewを横に並べる
SwiftUIにおいて、TextやImageなどのViewを横に並べるにはHStackを使います。 HはHorizontalの略で、「水平」を意味します。 【HStack基本的な使い方】 HStack { 子View1 子View2 子View3 } サンプルコード import SwiftUI struct ContentView: View { var... -
【SwiftUI】画面のサイズ(widthとheight)を取得するには?
画面の幅(width)と高さ(height)を取得するには、UIScreen.main.bounds プロパティが持つ widthとheightを参照します。 UIScreen.main.bounds.width // width UIScreen.main.bounds.height // height 【サンプルコード】 import SwiftUI struct Content... -
【SwiftUI】セーフエリアを無視して画面いっぱいにViewを表示するには?
セーフエリアを無視して画面いっぱいにViewを表示するには、ignoresSafeArea モディファイアを使用します。 このモディファイアは、指定されたエッジのセーフエリアを無視して、ビューを全画面に拡張します。 【サンプルコード】 import SwiftUI struct Co... -
【ARKit・RealityKit】ARCoachingOverlayViewを使ってガイドを出す
ARCoachingOverlayViewは、ユーザーにAR体験をよりスムーズに行うためのガイダンスや指示を提供するためのビューです。 例えば、デバイスを適切な位置に保持するようにユーザーに指示を出したり、AR空間内の特定の機能やボタンの使用方法を教えたりするの... -
【ARKit・RealityKit】画面の写真を撮ってフォトライブラリに保存するには?
画面の撮影は snapshot(saveToHDR:completion:) でできます。 import Foundation import RealityKit import ARKit let arView = ARView(frame: .zero) func captureImage() { arView.snapshot(saveToHDR: false) { image in if let image = image { // こ...
-
【Jetpack Compose】Room・Hiltのセットアップ手順
毎回、RoomとHiltの設定が複雑なので、セットアップの手順をメモとして残しておきます。 【前提】 アプリのアーキテクチャはMVVMで、次のような構成になります。 【Gradleの設定】 build.gradleファイルにRoomとHiltの依存関係を含める必要があります。 バ... -
【Jetpack Compose】色の指定方法
Jetpack Compose で色を指定する方法はいくつかあります。 このページでは一般的な方法を紹介します。 【方法】 最も基本的な方法は、Jetpack Compose の Color クラスを使って色を指定することです。 Color クラスは、RGB や ARGB フォーマットで色を表現... -
【Jetpack Compose】Toastの使い方 | 簡単なメッセージを一時的に表示させる
Toastは、簡単なメッセージを一時的にユーザーに表示するときに使う機能です。 このページではこのToastの使い方を解説します。 【Toast メッセージを表示する方法】 Toastを表示するには以下のように書きます。 val context = LocalContext.current Toast... -
【Android】画面の向きを固定する方法
画面の向きを固定するには、AndroidManifest.xmlファイルに適切な設定を追加する必要があります。 【画面を縦向き固定にしたい場合】 <activity android:name=".MainActivity" android:screenOrientation="portrait"> </acti... -
【Jetpack Compose】多言語化対応(ローカライズ)| 日本語と英語に対応するには?
海外向けにアプリをリリースするにはその国の言語に対応する必要があります。 とはいえ、全世界の言語に対応するには現実的ではないため、このページでは日本語と英語に対応したアプリの作り方を解説します。 前提 デフォルト言語を英語として、端末の言語... -
【Jetpack Compose】Scaffold Composableの使い方
Scaffoldコンポーザブルは、マテリアルデザインに基づいた基本的な画面構造を提供するUI部品です。 Scaffoldを使うことで、アプリの画面の構築を簡素化でき、一般的なUIパターンである「アクションバー」、「ナビゲーションバー」、「フローティングアクシ... -
【Jetpack Compose】TabRowの使い方
TabRowは、タブバーを作成するための便利なUI部品です。 【TabRowの使い方】 TabRowを作成するには、TabRowとTabのコンポーネントを使用します。各タブは、表示するテキストと選択状態を指定する必要があります。 var tabIndex by remember { mutableState... -
【Jetpack Compose】CircularProgressIndicatorの使い方 | ローディングを表示
CircularProgressIndicator は、ローディングや進捗状況を示すために使用されるUI部品の1つです。 これを使うことで、円形のインジケーターを表示してユーザーに作業の進行状況を示すことができます。 【CircularProgressIndicatorの基本的な使い方】 単に... -
【Jetpack Compose】ViewModelの使い方
【ViewModelの役割】 ViewModelは、UIの状態を保存し、ビジネスロジックとUIの間でデータのやり取りを担当します。 Jetpack ComposeでViewModelを使うことで、UIの状態を保持し、画面の状態が変化してもデータが失われないようになります。 ViewModelがな... -
【Jetpack Compose】画面遷移のやり方
Jetpack Composeには標準で画面遷移の機能がないため、画面遷移を実現するにはパッケージを導入する必要があります。 【画面遷移のためのパッケージを導入】 Navigation Composeというライブラリを使用します。 build.gradleのdependencies内に以下を追加... -
【Jetpack Compose】AlertDialogの使い方
AlertDialog は、ユーザーにメッセージを表示し、ユーザーの操作を促すダイアログを作成するために使われます。 このページでは。AlertDialog の基本的な使い方について解説します。 【AlertDialogの書き方】 AlertDialog( onDismissRequest = { /* 画面の... -
【Jetpack Compose】TextButton Composableの使い方 | テキストを含むボタンを作成する
TextButton コンポーザブルは、テキストを含むボタンを生成するためのUI部品です。 【TextButtonの使い方】 TextButton コンポーザブルを使ってボタンを表示するには、次のように書きます。 TextButton(onClick = { /* ボタンがクリックされたときの処理 *...
-
【Flutter/Dart】「N日前」「N日後」のデータを取得する方法
FlutterでN日前やN日後のDateTime型のデータを取得する方法を紹介します。 【まずは現在の日時を取得】 DateTime now = DateTime.now(); DateTime.now() は、実行時の現在時刻を取得するDartのメソッドです。 例えば、2025年2月12日 15:30:00 に実行すると... -
【Flutter】List<int>の値をSharedPreferencesに保存する方法
shared_preferencesには、List<int>型はないため、List<int>を文字列リストとして保存し、呼び出す際にList<int>に変換して読み込みます。 このページではそのやり方を紹介します。 【List<int>の保存方法】 import 'package:... -
【Flutter/Dart】substring()で文字列の一部を取り出す
substringは、Flutter(Dart)で文字列操作を行うためのメソッドの1つです。 指定した範囲の文字列を取得するのに使います。 【】 String substring(int startIndex, [int? endIndex]) startIndex: 抜き出したい部分文字列の開始位置(0から始まるインデッ... -
【Admob】ポリシー違反「広告動作の変更」に対応した
先日、初めて「広告動作の変更」という原因のAdmobポリシー違反連絡を頂きました。 ググってもあまり原因がわからず、とりあえずサポートセンターに調査依頼。 ただ、対応期限が2日後という鬼のようなスケジュールだったので、とりあえず一旦広告を削除し... -
【Flutter】Android StudioからコマンドでXcodeを開くには?
FlutterでAndroid StudioからXcodeを開くには、以下の手順でコマンドを使用します。 【手順】 1. iOSプロジェクトのパスに移動するFlutterプロジェクトのiosディレクトリに移動します。以下のコマンドを実行します。 cd ios 2. Xcodeを開くコマンドを実行... -
【Flutter】IconButtonのデフォルトのpaddingを削除するには?
【やり方】 IconButton( padding: EdgeInsets.zero, constraints: BoxConstraints(), ) FlutterのIconButtonウィジェットのデフォルトのpaddingを除くには、IconButtonのpaddingプロパティをEdgeInsets.zeroに設定し、constraintsプロパティにBoxConstrain... -
【Flutter】CupertinoAlertDialogにテキストフィールドを組み込む方法
CupertinoAlertDialog に TextField を追加するには、CupertinoAlertDialog の content プロパティに CupertinoTextField を埋め込むことで実現できます。 【方法】 CupertinoAlertDialog( content: CupertinoTextField(), ); 必要に応じてtitleやactions... -
【Flutter】iOS風のAlertDialogを表示する方法:CupertinoAlertDialog
FlutterでiOS風のAlertDialogを表示するには、CupertinoAlertDialogウィジェットを使用します。CupertinoAlertDialogはiOSスタイルのダイアログを提供し、デフォルトでiOSのデザインガイドラインに従います。 【CupertinoAlertDialogの使い方】 CupertinoA... -
【Flutter】スワイプで前の画面に戻る機能を無効にする方法
スワイプで前の画面に戻る機能を無効にするにはPopScope ウィジェットを使います。 【実装方法】 PopScope( canPop: false, // false にすることで無効になる child: Scaffold() ) PopScopeが持つプロパティcanPopをfalseに設定することで、スワイプで戻る... -
【Flutter】Androidビルド時に「java.lang.OutOfMemoryError: Java heap space」エラーが出たときの対処方法
「java.lang.OutOfMemoryError: Java heap space」エラーはGradleがFlutterアプリのビルド中にメモリ不足(Java heap space)に直面していることを示しています。 【す】 android/gradle.properties ファイルを開き、org.gradle.jvmargsの設定を変更し、Gr... -
【Dart】命名規則まとめ:変数名・クラス名などの付け方のルール
命名規則は、コードの可読性を向上させ、他の開発者がプロジェクトを理解しやすくするために重要です。 以下に、Flutterプロジェクトで一般的に推奨されるDart言語の命名規則を説明します。 以下の規則は必ず従わなければいけないというものではありません... -
【Dart】DateTimeから曜日を取得する方法
DateTimeから曜日を取得するには、weekdayプロパティを使用します。 weekdayの値は、月曜日が「1」、火曜日が「2」、・・・日曜日が「7」のように割り振らているので、この値を基に曜日を算出します。 【DateTimeの値から曜日を算出するコード】 次の例...