iOS

Swift3でRealmを使ってみる

投稿日:2017年5月15日 更新日:

はじめに

こんちには、はじめです。

現在勉強としてToDoアプリを作っており、その中でRealmを使用しています。

なので今回は自己学習の復習としてRealmを使って簡単に登録や検索ができるものとして、

単語の登録、一覧表示、検索が行えるアプリを作ってみました。

 

前提条件

Swift: 3.1
Realm: 2.7.0
Carthage: 0.22.0

 

事前準備

・Carthageのインストール
・プロジェクトの作成(SingleViewApplication)

Realmのインストール・設定

Carthageファイルの生成

ターミナルにてプロジェクトは以下で以下を実行

CarhageにてRealmをインストール

Carthageファイルに以下を記述

Realmをインストール

以下を実行してプロジェクトフォルダ配下にCarthageフォルダができていれば成功です。

プロジェクト内でRealmが使用できるように設定

・Generl > Linked Frameworks and Libraries に以下の二つを指定

・Build > Phases で「+マーク」をおして「Run Script」を追加
・Build > Phases > Run Scriptに以下を追加

 

以上でひとまずRealmが使えるようになりました。

 

モデル作成

・プロジェクト配下にModelsフォルダを作成

・Modelsフォルダ内にMyItems.swiftを作成し以下を記述

 

一覧表示画面、登録画面の作成

storyboard作成

・TOP画面はNavigationContoroller + TableView
・TOP画面右上の「+ボタン」から登録画面へ遷移(モーダル)
・登録画面でTextFieldと登録ボタンを追加

 

一覧表示画面

登録した単語一覧を表示する画面を作成

登録画面

次に単語を登録する画面を作成

 

登録処理の追加

登録ボタン押下後のデータ登録処理を追加します。

 

一覧表示処理の追加

データの取得

データの登録後Top画面が表示される際[viewDidLoad]は通らないため
[viewWillAppear]内にデータの取得処理を記述します。

 

Top画面にSearchBarを追加

SerachBarの追加

UISearchResultsUpdatingを継承してTableViewに追加して,

入力されるごとにあいまい検索を行った結果のみを表示するようにします。

 

さいごに

Realmはいろいろなところで使うことになると思います。

今回はあいまい検索を使いましたが、前方一致や後方一致、完全一致等の検索も今後使用する

必要があると思いますので、今後使用する機会があれば載せていこうと思います。

 

今回作ったアプリの最終的なソースは以下のようになります。

 

blog-page_footer_336




blog-page_footer_336




-iOS
-

執筆者:

免責事項

このブログは、記事上部に記載のある投稿日時点の一般的な情報を提供するものであり、投資等の勧誘・法的・税務上の助言を提供するものではありません。仮想通貨の投資・損益計算は複雑であり、個々の取引状況や法律の変更によって異なる可能性があります。ブログに記載された情報は参考程度のものであり、特定の状況に基づいた行動の決定には専門家の助言を求めることをお勧めします。当ブログの情報に基づいた行動に関連して生じた損失やリスクについて、筆者は責任を負いかねます。最新の法律や税務情報を確認し、必要に応じて専門家に相談することをお勧めします。


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

【iOS14】新機能WidgetKitへの挑戦【実践編】

1 はじめに2 Today Extensionとの違い3 ターゲットの追加4 StaticConfiguration4.1 TimelineProvider4.1.1 getSnapshot4.1.2 ...

swift

[Swift]CSVを読み込みRealmに保存してみる

1 はじめに1.1 前提条件2 準備3 実装4 さいごに はじめに こんにちは、nukkyです。 今回はDBにプリセットなどを用意する際にCSVを使ってRealmで保存して見たいと思います。 前提条件 ...

swift

[Swift3] コードで動的にオートレイアウトを変更する

1 はじめに1.1 前提条件2 事前準備3 1.NSLayoutConstraintのActiveを切り替える4 2.NSLayoutConstraintのActiveを切り替える(複数同時)5 3. ...

swift

[Swift]UITableViewのセルの入れ替えが簡単に実装できるライブラリ「SwiftReorder」

1 はじめに2 準備3 実装4 さいごに はじめに こんにちは、nukkyです。 今回は、UITableViewでセルを入れ替えたい際に、ドラッグ&ドロップ操作を簡単に実装できるライブラリ「S ...

swift

SnapKItをつかってコードでも簡単にAutoLayout実装

1 はじめに2 準備3 実装3.1 準備3.2 AutoLayoutを指定3.3 UIAlertControllerのカスタム4 さいごに はじめに こんにちは、nukkyです。 iOSの実装中にコー ...

フォロー

blog-page_side_responsive

2017年5月
 123456
78910111213
14151617181920
21222324252627
28293031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。