본문 바로가기

Xcode

(20)
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)..
20. UITableView 데이터 편집 및 삭제 이번에는 테이블에 있는 데이터를 편집, 삭제 해보겠습니다. 1. 편집 버튼을 루트 뷰에 추가하세요. RootViewController.m - (void)viewDidLoad { [super viewDidLoad]; // 앱 종료 이벤트를 노티피케이션 센터에 등록합니다. [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(applicationWillTerminate:) name:UIApplicationWillTerminateNotification object:nil]; NSString *path = [[NSBundle mainBundle] pathForResource:@"DrinkDirections" ofType:@"plist..
19. 데이터 저장, 편집, 정렬 (NSMutableArray) 배열에 저장된 데이터를 프로퍼티 리스트로 저장하는 작업을 해보겠습니다. DrinkConstatns.h #define NAME_KEY @"name" #define INGR_KEY @"ingredients" #define DIRE_KEY @"directions" AddDrinkViewController.h @interface AddDrinkViewController : DrinkDetailViewController { NSMutableArray *drinkArray; } @property (nonatomic,retain) NSMutableArray *drinkArray; AddDrinkViewController.m #import "DrinkConstants.h" @implementation AddDrinkV..
18. 키보드가 뷰를 가릴때 스크롤 뷰 사용하기 이번시간에는 키보드가 올라와 뷰를 가릴때 가려져 있는 화면을 보기 위해 스크롤 뷰를 사용해 보기로 하겠습니다. 키보드가 올라와서 화면을 가리고 있습니다. 뷰에 스크롤 뷰를 넣어서 화면을 드래그 해서 볼수 있도록 해야겠습니다. 모든 컨트롤을 선택합니다. 그리고, Layout -> Embed Objects In -> Scroll View 옵션을 선택합니다. ScrollView 필드를 선언하고 프로퍼티를 선언합니다. DrinkDetailViewController.h #import @interface DrinkDetailViewController : UIViewController { NSDictionary *drink; IBOutlet UITextField *nameTextField; IBOutlet UITex..
17. 닙 파일 재사용 및 모달 뷰 만들기 이전에 개발한 프로그램에서 닙 파일을 재사용해서 모달 뷰를 만들어 보도록 하겠습니다. 위의 사진과 같이 오른쪽 상단에 + 버튼을 만들어서 버튼을 누르면 밑에서 위로 올라오는 모달뷰를 만들도록 하겠습니다. 1. RootViewController.xib 를 열고 라이브러리에서 Bar Button Item을 찾아서 메인 윈도우로 드래그 합니다. 2. addButtonItem에 대한 IBAction, IBOutlet, 프로퍼티 선언을 추가합니다. 3. addButtonItem에 대해서 프로퍼티의 @synthesize, dealloc에서 release, addButtonPressed 메로스를 추가합니다. 4. 인터페이스 빌더에서 마무리 합니다. RootViewController.h #import @interfac..
15. 텍스트필드 사용 및 키보드 on/off 기능 구현하기 인터페이스 빌더에서 위와 같이 텍스트 필드를 View에 만들어 줍니다. 텍스트 필드드의 속성에는 여러가지가 있는데 그중에 많이 사용하는 것들은... Text - 입력된 텍스트 Placeholder - 문자열이 비어있을때 보이는 텍스트 Clear When Editing Begins - 텍스트필드를 클릭했을 경우 입력되어 있던 문자열이 지워진다. Font - 폰트 이정도 입니다.. 인터페이스 빌더를 저장(Cmd+S) 한 후, X-code를 빌드해 보면 텍스트 필드가 나오고 텍스트 필드를 클릭하면 키보드가 밑에서 튀어 나와 글씨를 입력할 수 있습니다. 그러나 글씨를 모두 입력한 후에도 키보드를 내릴 수가 없습니다. 키보드를 숨겨주기 위해서는 텍스트 필드에게 포커스를 놓으라고 요청해야 합니다. (최초 응답자 자..