본문 바로가기

아이폰 개발186

ios HTTP POST 방식 요청 - json 타입요청 ios POST 방식 요청 - json 타입요청 이번포스팅에서는 HTTP POST 방식으로 요청하는 방법에 대해서 알아본다. HTTP 요청 방법에 대해서는 지난 포스팅에서도 다루었으니 참고하면 도움이 될것 같다. IOS NSURLSession으로 Get 요청 Post 요청하기 - 개념 IOS NSURLSession으로 Get 요청 Post 요청 - 구현 1.화면 생성 스토리 보드에서 화면을 아래와 같이 생성해준다. 요청은 모두 HTTP POST 방식으로 요청을 할 건데, 한번은 application/x-www-form-urlencoded 타입으로 요청하고 한번은 application/json 타입으로 요청한다. 2.변수선언 스토리 보드에서 만든 textfield, textView 객체를 화면과 이어준다... 2020. 12. 17.
ios coredata로 게시판 만들기 - 로그보기 ios coredata로 게시판 만들기 - 로그보기 coredata 예제 마지막 부분인 로그페이지를 구현해보자. 테이블 뷰에서 데이터를 추가하거나 삭제할때 로그 데이터가 생성된다. 로그데이터는 테이블 뷰 셀의 악세서리를 클릭하면 상세페이지로 이동되면서 로그기록이 출력된다. 상세페이지도 마찬가지로 테이블 뷰로 구성되어 있다. 1.테이블뷰 생성 테이블 뷰를 생성한후 아래 그림처럼 segue로 이어준다. 그리고 테이블 뷰 기본 구성을 해준다. 테이블 뷰 기본 구성은 이 포스팅(ios TableView 예제)을 참고하자. 2.LogVC 컨트롤러 생성 위에서 만든 테이블 뷰와 매핑시켜줄 UIViewController를 상속받는 Controller를 하나 만들어준다. 그리고 위 story board에서 만든 테이블.. 2020. 12. 17.
ios coredata로 게시판 만들기 - 수정 ios coredata로 게시판 만들기 - 수정 저번포스팅에 이어서 이번에는 테이블 뷰 셀을 눌렀을 때 수정할 수 있도록, 팝업창이 뜨고, 수정내용을 입력하고 저장하면 수정내용이 저장되는 부분을 구현해보자. 1.테이블 셀 클릭이벤트 테이블뷰 셀을 클릭했을 때, 기존 데이터가 팝업창으로 뜨고, 내용을 수정해 저장하면 context에 저장한다. 일단 기존의 데이터를 팝업창으로 먼저 띄워보자. 셀이 클릭되었을때 호출되는 메소드는 didSelectRowAtIndexPath 메소드 이다. 전체 코드는 아래와 같다. - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ //1.수정될 Board 객체 Bo.. 2020. 12. 16.
ios coredata로 게시판 만들기 - 삭제 ios coredata로 게시판 만들기 - 삭제 지난 포스팅에 이어서 이번에는 core data의 데이터 삭제를 구현해 보자. 테이블 뷰에서 cell을 좌로 밀면 delete 버튼이 우측에 나타나고, delete 버튼을 클릭하면 데이터가 삭제되는 기능을 구현해 보자. 1.cell editRow 설정 아래 메소드 canEditRowAtIndexPath 의 리턴값을 YES로 설정한다. - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{ return YES; } 2.삭제 델리게이트 메소드 구현 테이블 뷰에서 삭제 버튼을 눌렀을때 editingStyle값이 UITableViewCellEditingSty.. 2020. 12. 16.
ios coredata로 게시판 만들기 - 저장 ios coredata로 게시판 만들기 - 저장 지난 포스팅에 이어서 이번에는 네비게이션 헤더 부분에 bar button item을 만들어서 클릭하면 팝업 창이 뜨고, 팝업창에 게시글의 제목과 내용을 작성해서 저장 할 수 있도록 진행을 해보자. 1.bar button 생성 ListVC 컨트롤러 우측 상단에 bar button item을 추가하고, ListVC.m과 연결시켜 준다. 2. UIAlertController 팝업 띄우기 위의 add 버튼을 누르면 아래 코드가 작동된다. 아래 코드는 제목과 게시 내용을 입력할 수 있는 팝업창이 뜨고, 입력을 하고 저장을 누르면 core data에 저장 되고, 다시 coredata에서 데이터를 조회하는 로직이다. - (IBAction)addAction:(id)sen.. 2020. 12. 16.
ios coredata로 게시판 만들기 - 조회 ios coredata로 게시판 만들기 이번 포스팅 부터 몇 차례 coredata를 이용해서 간단한 게시판 예제를 만들어 볼려고한다. 2개의 테이블을 이용해서 글을 작성하고, 로그를 기록하는 기능이 담겨있는 간단한 예제이다. 이번 시간에는 테이블을 생성하고 Board 테이블에서 제목과 내용을 조회해서 cell에 뿌려주는 부분까지 진행해본다. 1.coredata 파일로 가서 테이블을 생성해주고, 관계를 만들어 준다. Board 테이블은 아래와 같은 3개의 속성이 있고 로그 테이블과는 일대다의 관계를 맺고 있다. 로그 테이블은 아래와 같은 2가지 속성이 있다. 그리고 Board 테이블과는 다대일의 관계를 맺는다. 2.Navigation Controller 기반의 TableView 만들기 아래 사진 처럼 Na.. 2020. 12. 15.
iOS Photos Framework로 아이폰 사진앱 만들기 iOS Photos Framework로 사진앱 만들기 지난포스팅에서 iOS Photos Framework 개념에 대해서 정리를 해보는 시간을 가졌다. 이번포스팅에서는 iOS Photos Framework 개념을 가지고 간단한 사진앱을 만들어 보도록 하자. 먼저 기본 테이블 뷰를 셋팅했다는 가정하에 진행하도록 하겠다. ios 테이블 뷰 내용과 샘플 코드는 이곳에서 다운로드 할 수 있다. 화면구성 아래 사진을 보면 중간에 tableview가 보인다. tableview 셀안에 imageView와 label을 넣어주었다. photoframework를 이용해서 사진을 뿌려 줄 예정이다. 그리고 셀을 클릭하면 우측에 DetailViewController 가 열리고 이미지가 크게 보이도록 구현해보자. Custom t.. 2020. 12. 15.
iOS Photos Framework 정리 (PhotoKit) iOS Photos Framework 정리 iOS에서 사진이나 동영상에 접근할려면 어떻게 해야할까? 다양한 방법이 있다. 이번 포스팅에서는 다양한 방법중에서 Photos Framework를 이용해서 사진에 접근하고, 사진을 가져오는 방법을 알아본다. Photos Framework? Photos Framework란 애플에서 개발자에게 사진이나 영상에 쉽게 접근할 수있도록 관련 라이브러리들을 모아놓은 라이브러리 집합이라고 할 수 있다. 위의 사진 처럼 사용자의 앱은 직접 사진 라이브러리나 iCloud 사진에 접근 할 수 없다. 보안이슈 등의 문제가 있기 때문이다. 그래서 그림과 같이 우리의 앱은 무조건 PhotoKit 라이브러리를 통해서 사진에 접근할 수 있다. Photos Framework 대표 클래스 3.. 2020. 12. 14.
iOS 코어데이터 예제(feat: 기초 개념) iOS 코어데이터 예제(feat: 기초 개념) iOS 코어 데이터 방식 코어 데이터는 데이터 베이스의 빠른 속도와 효율성, 객체 직렬화의 객체지향 이점을 모두 한곳에 모아두었다. 엔티티와 관리 객체 특정 객체(User,Book등..)처럼 모델 객체의 실제 인스턴스 작업을 할 때는 관리 객체의 인스턴스를 다룬다. 이런 객체는 NSManagedObject 클래스나, NSManagedObject를 상속한 서브클래스의 인스턴스가 된다. 모델러에서 특정 커스텀 서브클래스를 지정하지 않는다면 아래 코드 처럼 key value coding으로 객체의 속성에 접근한다. //NSManagedObject 인스턴스 불러왔다고 가정 NSManagedObject *book; //조회 NSString *name = [book v.. 2020. 12. 13.