■時間のフォーマット
NSDate *now = [NSDate date];
NSCalendar * cal = [NSCalendar currentCalendar];
NSDateComponents *comps = [cal components:NSYearCalendarUnit |
NSMonthCalendarUnit |
NSDayCalendarUnit |
NSHourCalendarUnit |
NSMinuteCalendarUnit |
NSSecondCalendarUnit
fromDate:now];
NSLog(@"%@",comps);
compsから年、月等を個別に取得する。取得する値は自分のタイムゾーン。
■文字列から時間へ
NSDateFormatter* formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
NSDate* date = [formatter dateFromString:@"2012-04-05 13:12:12"];
[formatter release];
NSLog(@"%@",date);//出力 2012-04-05 04:12:12 +0000
指定した時間を、自分のタイムゾーンに応じて変換しているみたい。
2012年10月17日水曜日
[Objective-c]時間の取得・文字列からの変換
2012年10月9日火曜日
xcode pragma mark
#pragma mark - //セパレータ #pragma mark comment // FIXME: comment // MARK: comment // TODO: comment // !!!: comment // ???: comment // ttt: comment //できない
2012年10月8日月曜日
[iOS]ViewControllerでtouchesBeganやボタンのイベントをとるときの注意
以下のようなソースでは、touchesBeganやボタンのイベントはとれない。
hpListViewController* listViewController=[[[hpListViewController alloc]initWithFrame:rect]autorelease]; [contenaView addSubview:listViewController.view];なぜなら、viewはaddSubViewされて保持されるが viewControllerはどこにも関連がないので、解放されてしまう。 だから、利用時にメモリ違反をおこす。 以下のように、retainするか、配列などで保持して、解放されないようにしよう。
hpListViewController* listViewController=[[[hpListViewController alloc]initWithFrame:rect]retain]; [contenaView addSubview:listViewController.view];
2012年10月2日火曜日
[iOS]絵の一部を表示
CALayer* test=[CALayer layer];
test.contents=(id)[UIImage imageNamed:@"test.png"].CGImage;
test.frame=CGRectMake(0, 100, 60, 60);
test.contentsRect=CGRectMake(0.0f, 0.0f, 0.33f, 1.0f);
[self.view.layer addSublayer:test];
基本,画像はサイズにfitする。test.contentsRectをしていすることで、絵の部分を指定することが可能になる。
指定は、割合で指定する。
登録:
コメント (Atom)