Skip to content

Instantly share code, notes, and snippets.

//まずはプロパティを宣言
@property (nonatomic, strong) CBLLiveQuery *liveQuery;
//ViewDidLoadに以下を追加します。
AppDelegate *ap = ApplicationDelegate;
self.liveQuery = [[ap.database queryAllDocuments] asLiveQuery];
[self.liveQuery addObserver:self forKeyPath:@"rows" options:0 context:NULL];
@kuetsuhara
kuetsuhara / gist:8111093
Created December 24, 2013 09:58
CBLModelでDelete
- (void)deleteDocument:(CBLModel *)model{
NSError *err;
BOOL ok = [model deleteDocument:&err];
// 削除実行
if (ok) {
NSLog(@"Delete Complete!");
}
else{
[self showErrorAlert:@"Couldn't delete the item"];
@kuetsuhara
kuetsuhara / gist:8111087
Last active January 1, 2016 07:19
CBLModelでUpdate
- (void)updateDocument:(NSIndexPath *)indexPath{
// check情報を取得
ShoppingItem *item = dataArray[indexPath.row];
// Updateを準備する
NSError *err;
item.check = !item.check;
BOOL ok = [item save:&err];
@kuetsuhara
kuetsuhara / gist:8111082
Last active January 1, 2016 07:19
CBLModelでRead
- (void)loadAllDocuments{
// appDelegate呼び出し
AppDelegate *ap = ApplicationDelegate;
// ArrayをClear
[dataArray removeAllObjects];
// すべてのクエリを読み込む
CBLQuery *allQuary = [ap.database queryAllDocuments];
// appDelegate呼び出し
@kuetsuhara
kuetsuhara / gist:8111076
Last active January 1, 2016 07:19
CBLModelでCreate
// 新規ドキュメントの作成
- (void)createDocument{
// Appdelegateを呼ぶ
AppDelegate *ap = ApplicationDelegate;
// カウントの読み込み
NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
// カウントが0だったら(ユーザデフォルトが存在しなければ)1にする
int num = [userDefault integerForKey:NUMBER_KEY];
@kuetsuhara
kuetsuhara / gist:8111059
Last active January 1, 2016 07:19
CBLModel
ShoppingItem.h
@interface ShoppingItem : CBLModel
@property BOOL check;
@property (nonatomic, copy) NSString *type;
@property (nonatomic, copy) NSString *text;
@property (nonatomic, copy) NSDictionary *dictionary;
@property (nonatomic, copy) NSArray *array;
@property (nonatomic, strong) NSDate *created_at;
@kuetsuhara
kuetsuhara / gist:7981525
Last active December 31, 2015 11:39
Couchbase LiteをCBLDodumentで削除
- (void)deleteDocument:(NSString *)documentId{
// AppDelegateを呼ぶ
NSError *err;
AppDelegate *ap = ApplicationDelegate;
CBLDocument* doc = [ap.database documentWithID:documentId];
// 削除実行
if (![doc deleteDocument:&err]) {
[self showErrorAlert:@"Couldn't delete the item"];
}
else{
@kuetsuhara
kuetsuhara / gist:7981520
Created December 16, 2013 02:26
Couchbase LiteをCBLDocumentベースで更新
- (void)updateDocument:(NSIndexPath *)indexPath{
// check情報を取得
NSMutableDictionary *dataDic = [NSMutableDictionary dictionaryWithDictionary:dataArray[indexPath.row]];
// 現在のチェックを受け取る
BOOL wasChecked = [[dataDic valueForKey:@"check"] boolValue];
// 結果を反転させてセットする
[dataDic setObject: [NSNumber numberWithBool: !wasChecked] forKey:@"check"];
// Updateを準備する
NSError *err;
@kuetsuhara
kuetsuhara / FirstPersonPlayerClick
Last active December 31, 2015 02:59
あたり判定を保ったままオブジェクトを移動させる。
#pragma strict
private var center : Vector3;
private var target : GameObject;
private var moving : boolean;
private var fixJoint : FixedJoint;
function Start () {
center = Vector3(Screen.width/2, Screen.height/2, 0);
moving = false;
@kuetsuhara
kuetsuhara / FirstPersonClick
Last active September 14, 2019 02:02
Unityでモノを持ち上げ、離す。 左クリックで物体をとらえ、 左クリックで落とす、右クリックで投げる。
#pragma strict
private var center : Vector3;
private var target : GameObject;
private var moving : boolean;
function Start () {
center = Vector3(Screen.width/2, Screen.height/2, 0);
moving = false;