月別アーカイブ: 2015年6月

CSVFILE READ

平成27年6月24日(水曜日)

COREDATAに重複登録される件について
CSVFILEのファイル末の改行コードに注意!!

TableViewController セルの高さ変更

平成27年6月24日(水曜日)

[objc]
//—–
– (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
if (indexPath.row == 0) {
return 40;
}
else if(indexPath.row == 4){
return 65;
}
else if(indexPath.row == 5){
return 65;
}
else if(indexPath.row == 6){
return 65;
}
else if(indexPath.row == 7){
return 90;
}
else if(indexPath.row == 10){
return 90;
}
else {
return 40;
}
}
//—–
[/objc]

Tableviewで2つ以上のcustom cellを使う!!

平成27年6月24日(水曜日)

  1. storyboard上で、prototype cellsを2に設定。
  2. 1のセル style subtitle “Cell1
  3. 2のセル style custom “Cell2”
  4. File New uitableviewcell “DetailTableViewCell”  Create
  5. 2のセル パーツのリンク @synthesize
  6. tableView cellForRowAtIndexPath

[objc]
//カスタムセル追加
– (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
//- (DetailTableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier1 = @"Cell1";
static NSString *CellIdentifier2 = @"Cell2";
BOOL YES_NO;

if(indexPath.row == 0) {
DetailTableViewCell *cell = (DetailTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier2];

if (cell == nil) {
cell = [[DetailTableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier2];
}
YES_NO = [[self query_On_off_flag:[_detailItem valueForKey:@"name"]] boolValue];
//NSLog(@"query_On_off_flag = %@",YES_NO ? @"YES":@"NO");

if (YES_NO) {
cell.on_off_switch.on = YES;
} else {
cell.on_off_switch.on = NO;
}
return cell;
}
else {
UITableViewCell *cell = (UITableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier1];

if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier1];
}
switch (indexPath.row) {
case 1:
cell.textLabel.text = @"うりの一言";
cell.detailTextLabel.text = [[_detailItem valueForKey:@"point"] description];
break;
case 2:
cell.textLabel.text = @"温泉郷";
cell.detailTextLabel.text = [[_detailItem valueForKey:@"part"] description];
break;
case 3:
cell.textLabel.text = @"営業形態";
cell.detailTextLabel.text = [[_detailItem valueForKey:@"t_operation"] description];
break;
default:
cell.textLabel.text = @"error";
cell.detailTextLabel.text = [[_detailItem valueForKey:@"parking"] description];
break;
}
return cell;
}
return nil;
}
[/objc]

Terminating app due to uncaught exception ‘NSObjectInaccessibleException’, reason: ‘CoreData could not fulfill a fault for

coredata更新後に上記エラー発生。他では発生シないため、試しにフェッチリクエストコントローラを入れ替えると発生無し。原因は、cacheName:@”UserSearch”の変更ミス。

libreoffice正規表現

平成27年6月17日(水曜日)

正規表現による文字列置換

  1. edit find&replace
  2. other options
  3. reguler expressions check
  4. 今回の検索文字列は【.*字】
  5. ゼロ以上の任意の文字数の文字列を表すワイルドカードは、ピリオド記号とアスタリスク記号の組合せ (.*) です。

正規表現リンク

予報士UPDATE

平成27年6月16日(火曜日)

メインは、pickerdataのcoredata版及び元データ(csv)の追加

以上作業、ほぼ本日完了!!

温泉道UPDATE

平成27年6月19日(金曜日)

LaunchImage

桜鼠色(d8c6bc)

裏柳色(c1d8ac)


 

平成27年6月12日(金曜日)

九州道アップデート

xcdatamodeld (editor add model version)(current model version change)
add entity (On_off.Version)
add attributes
AppDelegate.h修正(onoff entity version対応)
persistentStoreCoordinator以下変更 マイグレーション対応

[objc]
//——————————————————————–
// マイグレーション追加
NSMutableDictionary *options = [[NSMutableDictionary alloc] init];
[options setObject:[NSNumber numberWithBool:YES] forKey:NSMigratePersistentStoresAutomaticallyOption];
[options setObject:[NSNumber numberWithBool:YES] forKey:NSInferMappingModelAutomaticallyOption];

// マイグレーション追加
if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:options error:&error])
{
NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
abort();
}
//——————————————————————–
[/objc]

平成27年6月11日(木曜日)

九州道アップデート

Navigation Toolbarの表示
NavigationContorollerにて、shows Toolbarをチェック!!

ナビゲーションバー 遷移先再表示

[objc]
//—————————————————
// ***** ナビゲーションバー 表示 *****
// viewWillAppearにて、非表示をしたものを表示に戻す、でないと遷移画面でバーは非表示となる。
– (void)viewWillDisappear:(BOOL)animated {
[self.navigationController setNavigationBarHidden:NO animated:animated];
[super viewWillDisappear:animated];
}
//—————————————————
[/objc]

ナビゲーションバー 非表示

[objc]
//—————————————————
// ***** ナビゲーションバー 非表示 *****
[self.navigationController setNavigationBarHidden:YES animated:animated];
[super viewWillAppear:animated];
//—————————————————
[/objc]

Navigation Toolbar 透明化

[objc]
//—————————————————
// Toolbarを透明に設定
[self.navigationController.toolbar setBackgroundImage:[[UIImage alloc] init] forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsDefault];
[self.navigationController.toolbar setBarStyle:UIBarStyleBlack];
self.navigationController.toolbar.translucent = YES;
//—————————————————
[/objc]

  • UIVIEWからUITABLEVIEWCONTROLLER(TABCONTROLLERから一旦切り離し、再接続)
  • LINKER WARNING対応(↓)

‘ld: warning: directory not found for option’


Google Maps SDK for iOS Version 1.10.1 – June 2015導入


  1. $ sudo gem install cocoapods
  2. Podfileファイル作成
  3. Podfileファイル内に
    source 'https://github.com/CocoaPods/Specs.git'
    platform :ios, '8.1'
    pod 'GoogleMaps'
  4. $ cd path-to-project $ pod install
  5. launch Xcode(your project’s .xcworkspace)
  6. iOS API key取得
  7. SDKDemoAppDelegate内((注意!!#import では無く、#import <GoogleMaps/GoogleMaps.h))
  8. Add a map サンプルコードをカット&ペーストして、OK!!

Google旧バージョンからの移行

  • bundle,library等削除
  • 上記手順適用
  • build settings other linker flag デリートし、エラー解消!!

  • Code Samples Overview
    ターミナルにて以下入力、自動的にプロジェクト起動。
    APIKey(以前から変更なし)を取得し、セットのちRUN
    $ sudo gem install cocoapods
    $ pod try GoogleMaps

DEMOアドレス
/private/var/folders/p3/z71vj7x13qvfmhbcmv__4_lh0000gn/T/CocoaPods/Try/GoogleMaps/GoogleMapsSDKDemos/