[Swift] CoreDataのテーブルからデータ件数を取得する
公開日:
:
最終更新日:2014/10/23
iPhone App 開発, Swift
Warning: Use of undefined constant user_level - assumed 'user_level' (this will throw an Error in a future version of PHP) in /home/users/1/juny/web/hidef/wp-content/plugins/ultimate-google-analytics/ultimate_ga.php on line 524
件数を取得する
fetchResultsControllerなどを使わず、直接テーブルのデータ件数を取得してみます。
CoreDataへのアクセスはfetchRequestを作成。
Objective-Cの場合
- (NSInteger)numberOfDataFromEntity:(NSString *)entityName managedObjectContext:(NSManagedObjectContext *)managedObjectContext
{
NSFetchRequest *request = NSFetchRequest.new;
[request setEntity:[NSEntityDescription entityForName:entityName inManagedObjectContext:managedObjectContext]];
[request setIncludesSubentities:NO];
NSError *error = nil;
NSInteger count = [managedObjectContext countForFetchRequest:request error:&error];
return !error ? count : 0;
}
引数のentityNameはテーブル名の文字列を渡します。
5行目のsetIncludesSubentitiesはエンティティにサブテーブルがあるかどうかを設定します。
8行目のcountForFetchReuestで検索を実行します。
Swiftの場合
func numberOfDataFromEntity(entityName: String, managedObjectContext: NSManagedObjectContext) -> Int {
let request = NSFetchRequest()
request.entity = NSEntityDescription.entityForName(entityName, inManagedObjectContext: managedObjectContext)
request.includesSubentities = false
var error: NSError? = nil;
let count = managedObjectContext.countForFetchRequest(request, error: &error)
return error == nil ? count : 0
}
ad
関連記事
-
-
[Objective-C] UINavigationControllerのセグエを使って画面遷移をする
画面遷移の実装 今回はUINavigationControllerを使って画面遷移をしたいと思いま
-
-
Xcode5のstoryboard内でUIKeyCommandエラーの対処法
既存のプロジェクトからstoryboardにあるオブジェクトをコピペして、新規プロジェクトに貼付けた
-
-
[Objective-C] 小数点を丸める!(数値変換)
小数点を含む数値 Objective-Cに限らず、小数点を含む数値を計算する場合はdoubleやf
-
-
[Swift] 画像を合成する
画像を合成 以下の2つの画像を合成してみます。円と四角です。 画像をプロジェクトに追
-
-
[Objective-C] バージョン更新時に変更内容をアラートで出力する
アプリの更新内容を表示したい! バージョン更新時に変更内容を表示させたいのは、ユーザーがいちいちA
-
-
NSDateを5分刻み・15分刻みで丸める
NsDateを初期値としてUIDatePicker等に設定する場合、日付の丸め処理が必要になるのでメ
-
-
小さなことからコツコツと
これまでHTMLとCSSだけで生きてきただけあって、プログラム言語がいまいちわからない。 Mo
-
-
[iPhone App] WorkManagerの不具合について
バージョン1.2.2の不具合 11/25日現在、iPhoneアプリの「WorkManger」バージ