본문 바로가기

2011/03

(13)
아이폰 SDK Examples http://www.iphoneexamples.com/
27. NSThread // 스레드는 한 함수를 관리한다. // 때문에 새로운 스레드가 실행되면서 함수를 실행하고, 함수가 끝나면 자연히 스레드가 종료된다. // 그래서 함수 내부에서 무한 루프를 돌면 스레드가 죽지않고 계속 유지됩니다. // 메인스레드의 이벤트루프가 이런 원리임. 이벤트루프에서 나와서 스레드가 끝난다는 것은 앱의 종료를 의미 // 생성 1 [NSThread detachNewThreadSelector:@selector(_th) toTarget:self withObject:nil]; // 생성 2 NSThread *thTime; thTime = [[NSThread alloc] initWithTarget:self selector:@selector(_th) object:nil]; [thTime start]; - (v..
26. View Controller 간의 변수 공유 View Controller 간의 변수 공유 하위 뷰에서 상위 뷰의 변수나 메소드를 호출하고 싶을때는 이렇게 사용하는 방법이 있습니다. SecondViewController 에 Instance 변수로 FirstViewController *parent를 선언합니다. 상위 뷰에서 호출할 때 SecondViewController *second = [[SecondViewController alloc] init]; // 하위 뷰 객체 생성 후 second.parent = self; // 하위 뷰와 자신을 포인터 연결 합니다. [self.navigationController pushViewController:second animated:NO]; 이렇게 하면 하위 뷰에서 parent.method... parent.v..
25. View 전환 효과 View Transition 효과 개인 공부도 되고 다른사람도 알면 좋지 않을까 해서 계속 올릴 예정입니다 소스도 공개해서 파일로 다 올려드리겠습니다~:) 그중 가장 기본적은 뷰 전환 효과! 거의다 뷰 전환시 네이게이션 바를 사용해서 움직입니다. 그러면 뷰의 디자인이 재미없어진다. 무조건 버튼이 위로 가있다. 그리고 테이블을 사용하게 되면 여러가지 효과를 못씁니다 ㅠㅠ. 하지만 버튼을 사용해서 이미지를 입히면 훨신 앱이 유용하고 디자인 폭 또한 넓어집니다. 다른뷰를 가지고 오는것은 대부분 알것이라고 생각해서 뷰 전환 효과까지 넣어봤습니다. 윈도우 베이지로 만들고 뷰컨트롤러를 4개를 추가한다. 그리고 이미지도 따로 넣어봤습니다~ 이왕 할거면 블로그도 홍보 할겸 간단한 이미지도 올려보았다. 그냥 하면 재미없..
24. UIAlertView 사용하기 ♨ UIAlertView를 사용하기 위해서는 다음과 같이 헤더파일에 델리게이트를 참조시켜야합니다. @interface ContentViewController : UIViewController { } - (IBAction)deleteMemo:(id)sender; 그리고 .m 파일에서 사용하면 됩니다. - (IBAction)deleteMemo:(id)sender { UIAlertView *alertView; alertView = [[UIAlertView alloc] initWithTitle:@"MemoPad" message:nil delegate:self cancelButtonTitle:@"No" otherButtonTitles:@"Yes",nil]; [alertView setMessage:@"Do you ..
23. SQLite 쿼리문 사용하기 ♨ SQLite를 사용하기 위해서는 헤더파일에 #import 를 임포트 해야합니다. #import #import // SQLite 를 사용하기 위한 헤더 파일을 임포트 @interface MemoPadAppDelegate : NSObject { UIWindow *window; UINavigationController *navigationController; NSString *DBName; // 데이터 베이스 이름 NSString *DBPath; // 데이터 베이스 경로 NSMutableArray *DBData; // 데이터 베이스에서 읽은 데이터를 가져온다. BOOL isFirstTimeAccess; // 데이터 베이스에 처음으로 접속하는지 여부 NSInteger currentMemoSQLIndex; N..
22. SQLite 사용하기 이번 시간에는 SQLite를 사용해서 DB 설계 및 데이터 저장과 불러오기 작업을 해보겠습니다. 우선 프로젝트 생성을 해보겠습니다. 기본적으로 테이블 뷰가 들어있는 Navigation-based Application을 사용하도록 하겠습니다. SQLite 데이터베이스 작업은 터미널에서 하게 되는데, 오류 없이 입력하기가 쉽지 않으므로 텍스트 편집기에서 명령을 입력한 뒤에 복사하고 붙여넣는 방법을 사용하겠습니다. 응용 프로그램에 들어있는 텍스트 편집기에서 다음과 같이 입력합니다. CREATE TABLE tblMemoPad ( MP_Index INTEGER PRIMARY KEY autoincrement, MP_Title TEXT, MP_Content TEXT, MP_Date TEXT ); INSERT INTO..
21. 구글 날씨 API 사용하기 구글 API를 이용해서 날씨를 출력하고자 하는 경우 http://www.google.co.kr/ig/api?weather=도시명 을 이용하면 xml 형태로 리턴되어 옵니다. GoogleWeatherViewController.h #import // xml 파싱을 위해서 NSXMLParserDelegate를 반드시 참조해줘야 합니다. @interface GoogleWeatherViewController : UIViewController { NSMutableData *receiveData; // xml을 받을 데이터 NSURLConnection *urlConnection; // 커넥션 NSString *condition; // 오늘의 날씨를 받을 스트링 } @property (nonatomic, retain)..