iOS関連のことを調べてみた

iOS関連のことを調べてみた

【SwiftData】Query with dynamic properties in a View

結果を表示する子 View にて。

“`swift
struct UserListView: View {
@Query var users: [User]

init(sort: SortDescriptor) {
_users = Query(sort: [sort])
“`
こういうことですか。

# 🧑🏻‍💻 参考

【SwiftData】@Query の検索条件や並び順を変更する

元記事を表示

【CreateML】画像分類モデルを作成して、bravesoftキャラクター画像分類アプリ作成してみた!

初めまして!
bravesoft株式会社でiOSエンジニアをしている永井です。

最近、Visionフレームワークに触る機会があり、機械学習機能は「面白い!」と個人的になりました。もっと追求するべく、Appleの機械学習から画像分類というのを見つけたので今回は「CreateML」についてのモデル作成からアプリの組み込み/実装までの記事となります。

この記事では、bravesoftの自社開発にあるキャラクターを分類していきます。

## この記事で得られるもの
・CreateMLの基礎知識
・画像分類モデルについて
・モデルの作成方法
・モデルのアプリ組み込み

## CreateMLとは
macOS向けに開発された機械学習モデル構築フレームワークです。GUIベースのツールで、テキスト分類や画像分類や音声分類などのタスクを簡単に実行できます。Swiftとのシームレスな統合が特徴で、最適化されたモデルを生成し、Core MLでの統合も容易で作成したアプリに簡単に組み込むことが可能です。

公式サイト
https://developer.apple.com/jp/machine-lear

元記事を表示

Flutter案件待ち間の冒険:アプリ模倣チャレンジ – 第1章「時計」アプリ 世界時計編

## 世界時計のヘッダーを作ってみよう!
まずは世界時計の顔となるヘッダー部分から攻略開始だ!

![スクリーンショット 2024-06-21 11.13.02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/147814/4b9e9fb7-c6b6-5979-cd87-964a48109561.png)

### スクロールで現れるタイトル
iPhoneのデフォルトアプリと同様に、ヘッダーのタイトルはスクロールに応じて表示されるように実装したぞ!
![Jun-21-2024 11-19-14.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/147814/b6e8f3cb-6d9b-4c45-12fd-791c26061031.gif)

### ボタン配置で迷宮入り!?
ヘッダーにボタンを配置するのも一苦労だったんだ。レイアウト調整はまるで迷宮をさまようよう…。でも、Flutterのレイアウトウィジェットを駆使して、な

元記事を表示

【CSS】一部のスマホで動画再生中に動画上の画像が見えなくなる問題の解決方法

ウェブページで動画を再生する際、一部のスマホでは、動画の上に配置した画像やボタンが見えなくなることがあります。この問題は、CSSの`transform`プロパティを使用して解決できました。

## 確認環境
– **デバイス**: iPhone X
– **ブラウザ**: Chrome、Safari

## 問題の概要

以下のようなHTMLとCSSを使用している場合、一部のスマホで動画を再生すると、動画の上に配置したロゴや音量ボタンが見えなくなることがあります。

これらのブラウザでは、特にiOSの仕様により、動画要素のレンダリングが他の要素と異なる方法で処理されるため、このような問題が発生するようです。

### HTML

“`html

元記事を表示

iOSにおける画面サイズとインターフェースのバリエーションを探る

### はじめに

iOSアプリ開発では、多様な画面サイズに対応する柔軟なインターフェース設計が重要です。

### 記事の目的

“wC”, “wR”, “hC”などの値に戸惑ったことはありませんか?この記事を読むと、Size Classの概念や、インターフェース設計での利用方法、そしてあらゆるデバイスで適応するユーザーインターフェースを作成するためのヒントを理解できるようになります。

### 概念

#### 1. Size Class

**Size Class**は、iOSで異なる画面サイズに対応するためのシステムです。画面サイズを次の2つの軸に分けて管理します:

– **横幅 (Width)**
– **縦幅 (Height)**

各軸には2つのタイプがあります:

– **Compact**: 小さいサイズ (例:縦向きのiPhone)
– **Regular**: 大きいサイズ (例:横向きのiPad)

例:横向きのiPadは、横幅と縦幅の両方がRegularなSize Classを持ちます。一方、縦向きのiPhoneは横幅がCompactで縦幅がRegularな

元記事を表示

Flutter × symbol-sdk

# はじめに

こんにちは。だい(@ishidad2)です。
晴れ時々Symbolということで久々にSymbolネタの記事を書いていこうと思います。
今回は@Toshi_maさんが作成されているFlutter用のSymbolSDKを使ってスマホからトランザクションを飛ばしてみようと思います。
なお、DartやFlutterのインストールなどは事前に済んでいることが前提条件となります。

# 環境

FVMとは、Flutter SDKのバージョンをプロジェクト毎に管理するツールです。
以下を参考に必要であればインストールをしてください。(Flutterのバージョン管理が必要なければ不要です)

https://fvm.app/

以下、私の実行環境です。

:::note warn
これより先の記述は筆者の環境であるMacでの説明になります。それ以外のWindows等では当てはまらない説明があるかもしれません。適宜読み替えてください。
:::

“`bash
% fvm –version
2.4.1

% dart –version
Dart SDK version: 3.3.1

元記事を表示

iOS開発でhttp通信や非同期通信を使おう!

iOSソフトウェアを開発するようになってネットワーク接続を必要になってくるのではないだろうか.例えばHTTP通信や非同期通信をしたいことがあるだろう.

iOSではデフォルトで許可されてるのは`https通信`のみで,http通信は許可されていない.開発中はhttpと通信したいことも多いので,http通信の有効化を行う手順を紹介する.

# 前提条件
– [XCode のインストール](https://apps.apple.com/jp/app/xcode/id497799835?mt=12)
– Swiftで記述します

# iOSデバイスでネットワーク接続許可をする
## XCodeでの設定

> 今回は私用のプロジェクトを使います

まずXCodeの自分のプロジェクトのボタンをクリックする.

次に自分のプロジェクトのターゲットをクリックする.

`info`を選択し,`Custom macOS Application Target Properties`の欄の`+`ボタンを押し,`App Transport Security Settings`を追加する.

`App Tra

元記事を表示

[Swift] タロットカードアプリで画像を自動生成してみた

# はじめに
こんにちは!
先日、以下の記事を書きました。

[Swift & SwiftUIでタロットカードアプリを作る](https://qiita.com/yam_dev/items/871b47c1065f570ff17a)
[[Swift] ホラー画像生成アプリ](https://qiita.com/yam_dev/items/7c09f00c4f2a82fdf7a1)

今回はこれらをマージして、タロットカードの画像を自動生成してみました。
簡易版ですが、動きは良さそうなので共有します!

# 要件
– ボタンをタップすると、タロットカードをランダムに選択する
– タロットカードの名前と意味に沿って画像を生成する
– タロットカードの名前、画像、意味を表示する

# 準備
プロジェクトの作成方法は、[Swift & SwiftUIでタロットカードアプリを作る](https://qiita.com/yam_dev/items/871b47c1065f570ff17a) を参照してください。

User Interfaceは`SwiftUI`を選択しました。

# 実装

Co

元記事を表示

Credential期限切れ対応

# iOS開発時のCredential期限切れ対応

2台のMacで開発していて、期限切れたときの対応方法を忘れるのでメモ。
キーチェーンからP12ファイルを出力出来なかった(グレーアウトで選択できなかった)が、XCODEからやると出来た。

基本の流れは他サイト参考に。
例えば
https://kingmo.jp/kumonos/ios-certificate-profile-renewal/#google_vignette

## やり方

1. メインのMacでリクエストファイルを作成
1. デベロッパーサイトで新しいCertificateを作成
1. CERファイルをダウンロードしてダブルクリックして導入
1. 【ここから】xcodeを立ち上げてXcode->setting->Accounts->ManageCertifigates…
1. 証明書を右クリックしてExport
1. パスワード入力して保存
1. 2台目のMacにcerとp12をコピーして、ダブルクリックで導入

とりあえず、これでどちらのMacでも新しいプロビジョニングプロファイルが使えるよ

元記事を表示

static let について

## はじめに
私は最近プログラミングスクールにて学習をスタートした初学者で、学習していく中で疑問に思ったことや苦労したことなどについて記事を書いております。

知識が浅はかですので、間違っている部分があるかもしれません。
あらかじめご了承ください。

## static let について

‘static let’は、Swiftにおいて定数として使用されるクラスプロパティを定義するために使用されます。この定数は、そのクラス全体で共有され、変更不可であり、最初に一度だけ設定されます。

これにより、変更されることがないことが保証された共有データを提供できます。

“`swift
class Constants {
static let appName = “FamousQuoteGenerator”
static let maxFavorites = 100
}

// 定数にアクセス
print(Constants.appName) // 出力: FamousQuoteGenerator
print(Constants.maxFavorites) // 出力: 1

元記事を表示

Realmマイグレーションエラー

## はじめに
私は最近プログラミングスクールにて学習をスタートした初学者で、学習していく中で疑問に思ったことや苦労したことなどについて記事を書いております。

知識が浅はかですので、間違っている部分があるかもしれません。
あらかじめご了承ください。

また、今回は自分用に残したいと思います。

## Realmマイグレーションエラー

RealmSwiftをPodsインストールしてアプリ開発をする中で、下記のようなエラーが発生しました。

:::note alert
Thread 1: Fatal error: Failed to instantiate Realm: Error Domain=io.realm Code=10 “Migration is required due to the following errors:
– Property ‘QuoteDataModel.quoteLabel’ has been removed.
– Property ‘QuoteDataModel.characterLabel’ has been removed.
– Property

元記事を表示

[Swift] ホラー画像生成アプリ

# はじめに

だいぶ暑くなってきましたね。
これから夏本番ということで、今回は、Swiftを使ってホラーテイストな画像を生成するiOSアプリを作ってみました👻

# 要件

* iOS 14.0以降
* Xcode 12.0以降
* OpenAI APIキー

# 環境構築

1. **Xcodeで新規プロジェクトを作成**

* プロジェクト名: HorrorImageConverter
* インターフェース: SwiftUI
* 言語: Swift

2. **OpenAI APIキーを取得**

OpenAI API ([https://openai.com/index/openai-api/](https://openai.com/index/openai-api/)) でアカウントを作成し、APIキーを取得してください。

# 要件
– 作りたい画像のイメージを入力できる
– 画像生成ボタンをタップすると、ホラー画像が生成される

# 実装

“`swift:ContentView.swift
import SwiftUI

struct Content

元記事を表示

SwiftUI(iOS)におけるクリーンアーキテクチャ

## はじめに

こんにちは。この投稿では、Clean Architecture に基づいた Android アプリケーション開発のために構築したソースコードについて紹介します。

このソースコードは私の個人 GitHub にアップロードしています。[GitHub](https://github.com/samyoney)。

これまで、MVVM、MVC、MVP、TCA などのモデルを使用してモバイルアプリを開発してきましたが、MVVM はテストが容易でメンテナンスも簡単であるため、最も実用性が高いと感じています。特に `use case` の概念は、`user story` から切り出して基本設計を行う際に非常に役立ちます。

## SwiftUI とは何か、そしてなぜ使用すべきか?

SwiftUI は、iOS、macOS、watchOS、tvOS のアプリケーションのユーザーインターフェース(UI)を構築するために Apple が開発したフレームワークです。2019年の WWDC で初めて紹

元記事を表示

【TCA】observe(_:)でトラッキングしている値をクロージャ内で変化させた場合は変更を検知しない

以下のコードで、ボタンをタップしたときにコンソールに出力される値はどうなるでしょうか?

“`swift
// Feature
@Reducer
struct Feature {
@ObservableState
struct State {
var flag = false
}

enum Action {
case buttonTapped
case finished
}

var body: some ReducerOf {
Reduce { state, action in
switch action {
case .buttonTapped:
state.flag = true
return .none
case .finished:
state.flag = false

元記事を表示

アプリ紹介(2023-10) ~初めてのmobile

# 目的
apple developerの有効期限が切れたため、紹介程度に記載。
# 技術stack
– ReactNatife(firebase)
– firebase(storage ,firestore,authication)
![](https://storage.googleapis.com/zenn-user-upload/57581fb3f90d-20240617.png)
# github
https://github.com/nagisa599/menmenMobileApp

https://github.com/nagisa599/MenMenWebApp
# 内容
## ログイン,新規登録
#### apple,google,メールアドレスの

## ユーザ登録
【Flutter】UXの向上に向けて知っておいたら得すること

# 初めに
同期処理でプログラムが実行されるFlutterでは、非同期処理やUIのフレーム管理が非常に難しいし、UXを向上させるポイントにもなってきます。
そこで、今回はFuture.microtaskとWidgetsBinding.instance.addPostFrameCallbackの違いについて説明していきます。
これらのメソッドを適切に使用することで、より効率的で応答性の高いアプリケーションを構築できます。
本記事では、これらのメソッドの詳細な解説と、その使用例について説明します。

# Future.microtask

1. Future.microtaskとは?
Future.microtaskは、すぐに実行するべきタスクをスケジュールするためのメソッドです。Dartのイベントループ内で最も高い優先度を持つため、できるだけ早く実行されます。これは、非同期処理の中で短時間で完了するタスクを実行するのに適しています。

2. 基本的な使い方
Future.microtaskは、以下のように使用されます。

“`dart
Future.microtask(() {
/

元記事を表示

[Swift] ハミング距離の計算アプリ

# はじめに
こんにちは!
Swiftの学習を兼ねて、以前執筆した内容を、Swiftで実現してみようと思います。

今回は、[ハミング距離による類似画像の検出](https://qiita.com/yam_dev/items/e5f69b0c7b670aa498cb)にチャレンジです。

最初にお伝えしておくと、あまり実用性はありません!
こういうことができるんだ、という程度で見ていただけると幸いです!

# 要件
–  画像を2枚アップロードできる
–  比較ボタンをタップすると、画像のハミング距離と類似度を表示する

# 準備
プロジェクトの作成方法は、[Swift & SwiftUIでタロットカードアプリを作る](https://qiita.com/yam_dev/items/871b47c1065f570ff17a) を参照してください。

User Interfaceは`SwiftUI`を選択しました。

### 今回のディレクトリ構成
ContentViewのみ修正してます。

SwiftとSwiftUIでイラっとするデジタル時計を作る

# はじめに
こんにちは!
最近、改めてSwiftはできた方がいいな、と思い、少しずつ学習中です。

今回は、デジタル時計を作ります。
せっかくなので、色々な効果を適用して、イラっとする動きにしてみました。

# 要件
– デジタル時計を表示する
– 1秒おきに様々な効果を適用する

# 準備
プロジェクトの作成方法は、[Swift & SwiftUIでタロットカードアプリを作る](https://qiita.com/yam_dev/items/871b47c1065f570ff17a) を参照してください。

User Interfaceは`SwiftUI`を選択しました。

### 今回のディレクトリ構成
ContentViewのみ修正してます。

# 実装
“`swift:ContentView.swift
im

元記事を表示

【iOS】AndroidエンジニアがSwiftUIを触ってみた感想

普段Androidアプリを開発している私は、興味本位でiOS開発をしてみたくなり、Apple Developerのサイトに公開されているSwiftUIのチュートリアルを見ながら学習しました。

https://developer.apple.com/tutorials/swiftui/creating-and-combining-views

今回はSwiftUIを触ってみた軽い感想を書きます。

**結構楽しいですね。**

## 大まかな感想
Androidの**Jetpack Composeと記述の仕方が似ている**なというのが、第1印象でした。

どちらも宣言型のUIでしたね。

少ない行数である程度の機能を実装できるのは、かなり便利です。

## 良きかなポイント👍
ここでは私が特に良かったと感じたところについてお伝えします。

私の良きかなポイントはこちらです。
– マップの実装が簡単
– Swiftを使用しているため、言語の学習コストが低かった

### マップの実装が簡単
1. ビューファイルを用意した後に`Mapkit`をimport
2. 表示場所を設定するメソッ

元記事を表示

SwiftとSwiftUIで上長ダッシュアプリを作る

# はじめに
こんにちは!
普段、開発作業を行なっていると、様々な問題が発生しますよね。

進捗がやや遅れ気味とかいまいち理解が追いつかないとか、それならまだ安心。
モチベーションの低下など、メンタル面に影響すると、大変なことになります。

特にメンタル面は早期に解決した方がいいので、少しでも早くアラートを上げるべき。
しかし、どのタイミングでアラートを上げるべきか、そして何を伝えるべきか、分からなかったりします。

そこで、今回は、ボタンを押すだけでアラートをGoogleチャットに送信するシンプルなiOSアプリを作成します。

少しでも解決の一助となれば幸いです。

# 要件
– 名前を設定できる
– Webhook URLを設定できる
– 名前とWebhook URLはローカルストレージに保存され、次回起動時に利用される

# 準備
プロジェクトの作成方法は、[Swift & SwiftUIでタロットカードアプリを作る](https://qiita.com/yam_dev/items/871b47c1065f570ff17a) を参照してください。

User Interfaceは

元記事を表示

OTHERカテゴリの最新記事