현재 OS X El Capitan beta 6(15A244d)과 Xcode 7 beta 5에서 simulator crash 및 storyboard를 열 수 없을 경우에는 아래의 경로에 있는
구 버전의 simulator를 삭제후 Xcode를 재기동 하면 된다.

/Library/Developer/CoreSimulator/Profiles/Runtimes

나의 경우에는 다음과 같은 simulator 폴더가 있었고, 모두 삭제한 후 Xcode를 재기동 하니 정상적으로 작동하였다.

iOS 7.1.simruntime
iOS 8.1.simruntime
iOS 8.2.simruntime 

참고 : Apple Developer Forums

스크린샷 2015-07-10 오후 1.38.48

우리나라는 도대체 언제쯤 가능할 것인지...
이참에 그냥 미국 계정으로 다 갈아타 버릴까...

IMG_0067

오늘 새벽 스페셜 이벤트 후에 아침 출근길에 메일이 왔다. 아, 얼마 안남았지만 금년에는 앱스토어에 제출할 수 있을까?

어제 오전에 OS X Mavericks DP6으로 업데이트를 했다.
그리고는 회사에서는 IntelliJ를 사용하는데 문제가 없었는데, 퇴근 후 집에와서 MBPR을 부팅 후 IntelliJ를 실행시키니까 그림처럼 MenuBar가 응답이 없었다.
프로젝트를 활성화 시켜도 달랑 Apple과 IntelliJ 메뉴만 표시되고 File, Edit, View 등의 메뉴는 하나도 보이질 않았다. T.T

구글링을 해본 결과 dump 파일을 support@jetbrains.com으로 보내면 대응해준다길래, 되도 않는 영어로 러시아 형하고 밤새 메일을 주고 받았다.
메일을 보내고 자려고 했는데 1분도 안되서 회신이 와서 깜짝 놀랐다.
생각해보니, 체코하고는 시차가 7시간 나니까, 갸들은 이제 퇴근 준비를 할 때였어. ㅋ

아무튼, 결론은 DP6으로 올리고 나서 JDK 버전이 내려가서(?) 발생한 문제였고 JDK 버전을 올려주고 나서 해결됐다.
Apple에서 공식적으로 제공하는 JDK를 설치하면 된다.
Mavericks 정식 버전이 나오면 이런 문제는 해결 되겠지?

스크린샷 2013-08-23 오전 1.07.27

불쌍한 시리

속상한 시리. ㅋ

https://farm6.staticflickr.com/5343/8979276506_ea18c1ab98_z.jpg

박스에 처박혀 있던걸 키캡 다 분리해서 청소하고 사용중. 그 더럽던 기억까지 싹 날라갔으면 좋겠다.
낮에는 몰랐는데, 물티슈로 한 번 닦아야겠어.



Awesome!
멀티터치는 자세(?)가 웃긴 관계로 pass!

iPhone 에서 작성된 글입니다.
쩝... 개인적으로 별로 안좋아 하는거지, 막 깎아 내리지는 않았었는데...
이젠 애처롭기까지 하는구나. 에휴...



NSObject에 정의되어 있는 setValue:forKey에서 setValue가 nil일 경우 처리함.
Cocoa 3rd RaiseMan Application에서 사용.
다음은 책의 내용중 일부.

NSObject에 정의된 이 메서드가 예외를 발생시키기 때문에 사용자가 ExpectedRaise필드를 비워 두면 여러분의 객체는 예외를 발생시킬 것이다. 일반적으로 setNilValueForKey:를 재정의해서 인스턴스 변수를 어떤 기본 값으로 정한다. 이 경우 Person 클래스에 있는 이 메서드를 재정의하여 expectedRaise를 0.0으로 설정한다. 다음 메서드를 Person.m에 추가하자.


- (void)setNilValueForKey:(NSString *)key {

if ([key isEqual:@"expectedRaise"]) {

[self setExpectedRaise:0.0];

} else {

[super setNilValueForKey:key];

}


}


위의 메서드를 재정의 하지 않은 상태에서 예제의 Raise 입력부를 비우면 다음과 같이 예외가 발생한다.
스크린샷 2009-09-09 오후 2.52.06
어렵구만. 근디, 재미는 있구만. :-)

//

//  AppController.h

//  MakeDataSource

//

//  Created by JoonHo Son on 09. 9. 8..

//  Copyright 2009 JoonHo Son(s9712094@gmail.com). All rights reserved.

//


#import <Cocoa/Cocoa.h>



@interface AppController : NSObject {

IBOutlet NSTextField *textField;

IBOutlet NSTableView *tableView;

NSMutableArray *array;

}


- (IBAction)addTodo:(id)sender;

@end



//

//  AppController.m

//  MakeDataSource

//

//  Created by JoonHo Son on 09. 9. 8..

//  Copyright 2009 JoonHo Son(s9712094@gmail.com). All rights reserved.

//


#import "AppController.h"



@implementation AppController

#pragma mark -

#pragma mark override methods

- (id)init {

if (![super init]) {

return nil;

}

array = [[NSMutableArray alloc] init];

return self;

}


- (void)dealloc {

[textField release];

[tableView release];

[array release];

[super dealloc];

}


#pragma mark -

#pragma mark private methods

- (void)addTodo:(id)sender {

NSString *string = [textField stringValue];

if ([string length] == 0) {

NSLog(@"You must input TODO text");

return;

}

[array addObject:string];

[tableView reloadData];

[textField setStringValue:@""];

int count = [array count];

int i;

for (i = 0; i < count; i++) {

NSLog(@"%d contents : %@", i, [array objectAtIndex:i]);

}

}


#pragma mark -

#pragma mark delegate methods

- (int)numberOfRowsInTableView:(NSTableView *)tv {

return [array count];

}


- (id)tableView:(NSTableView *)tv

objectValueForTableColumn:(NSTableColumn *)tableColumn

row:(NSInteger)row; {

NSString *v = [array objectAtIndex:row];

return v;

}


- (void)tableView:(NSTableView *)tv

   setObjectValue:(id)object

   forTableColumn:(NSTableColumn *)column

  row:(int)row {

[array replaceObjectAtIndex:row withObject:object];

}

@end



+ Recent posts