UITableViewCell自適應大小(各種場合下的處理)(作者:hengchengfei)
關鍵的兩句:
tableView.estimatedRowHeight = 44 tableView.rowHeight = UITableViewAutomaticDimension
場合1:
只有一個UILabel
場合2:
有多個UILabel,相互之間有約束
場合3:
只有一個UILabel,但是未設置Bottom的底部約束,導致UITableViewCell不能自適應高度.(默認高度為44)
場合4:
因為沒有UILabel,所以UITableViewCell不能自適應高度.(默認高度為44)
環境: XCode7,Swift2.0
系統: iOS 8.0以上
3D Touch 簡單demo(crazypoo)
iPhone6s以上機型的3D Touch簡單demo
購物車(作者:smile82475)
用 CAAnimation 的基礎動畫組合而成的加入購物車動畫效果。點擊購物車按鈕,圖片會從按鈕沿著一定路徑落入購物車,移動動畫完成後購物車會閃動動畫
測試環境:Xcode 6.2,iOS 6.0 以上
coredata的增刪改查 -MyCoreData(作者:libing1125)
- (IBAction)add:(id)sender { Player *playerObject = [NSEntityDescription insertNewObjectForEntityForName:@"Player" inManagedObjectContext:self.cdViewController.managedObjectContext]; playerObject.name = self.nameTF.text; playerObject.age = [NSNumber numberWithInteger:[self.ageTF.text integerValue]]; playerObject.team = self.team; [self.cdViewController saveContext]; [self dismissViewControllerAnimated:YES completion:nil]; // dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ // NSManagedObjectContext *tempContext = [[NSManagedObjectContext alloc]init]; // [tempContext setPersistentStoreCoordinator:sharedPersistenStoreCoordinator]; // // Player *playerObject = [NSEntityDescription insertNewObjectForEntityForName:@"Player" inManagedObjectContext:tempContext]; // playerObject.name = self.nameTF.text; // playerObject.age = [NSNumber numberWithInteger:[self.ageTF.text integerValue]]; // //playerObject.team = self.team; // playerObject.team = (Team *)[tempContext objectWithID:self.teamID]; // NSError *error = nil; // if (tempContext && [tempContext hasChanges] && ![tempContext save:&error]) { // NSLog(@"Error %@, %@",error,[error localizedDescription]); // abort(); // } // // dispatch_async(dispatch_get_main_queue(), ^{ // [self dismissViewControllerAnimated:YES completion:nil]; // }); // // }); } - (void)mocDidSaveNotification:(NSNotification *)notification { NSManagedObjectContext *saveContext = [notification object]; if (saveContext == self.managedObjectContext ) { return; } if (saveContext.persistentStoreCoordinator != self.persistentStoreCoordinator) { return; } dispatch_async(dispatch_get_main_queue(), ^{ NSLog(@"Merge changes from other contex.\n"); [self.managedObjectContext mergeChangesFromContextDidSaveNotification:notification]; }); }
測試環境:Xcode 6.2,iOS 6.0 以上
一種網絡層與業務層的設計方案(作者:長劍廢水)
iOS中一種網絡層與業務層的設計方案
測試環境:Xcode 6.2,iOS 6.0 以上