아이폰어플개발정보2012. 1. 26. 11:03
iOS에서 가장많이 사용하는 UI는 바로 테이블 뷰이다. 테이블 뷰는 리스트형태의 데이터를 보여주기위해 사용하기도 하지만, 설정화면을 TableView로 구성하기도 한다.
[TableView로 설정화면을 구성한 예]
이렇게 설정을 TableView로 만들었을때 해당 Cell들은 고정적이며 동적으로 처리해야 할일이 없다. 그런데도 이전버전의 방식으로 구현을 하려면 Custom Cell을 xib로 만들고 이것들을 배열로 만드는 불편한 작업을 할 뿐만 아니라, 테이블을 구현하기 위한 각종 delegate method까지 구현을 해줘야 한다.이렇게 불편한 점을 개선하고자 xCode4.2(iOS5)에서는 "static cell"이라는 일종의 TableView 타입을 제공해 줌으로서, Cell의 갯수가 변하지 않는 상황에서 쉽게 셀을 구성하도록 해주는 기능입니다. 해당기능은 xCode 4.2에서 제공하는 story board에서 사용할 수 있습니다.작성 방법1. 프로젝트 생성을 다음과 같이 진행합니다.
두번째 화면에서 Use Storyboard 에 체크를 한후 프로젝트를 생성합니다.
그럼 다음과 같은 구조의 프로젝트가 생성이 됩니다.
2. 첫번째로 ViewController.h가 상속받고 있는 Class를 UIViewController 에서 UITableViewController로 변경합니다.
3. MainStoryboard.storyboard파일을 선택합니다. 그후 오른쪽 아래쪽의 library창에서 TableViewController를 끌어다가 빈 화면으로 올려놓습니다.(기존에 있던 view위에 올리는 것이 아닙니다.)
빈공간으로 끌어올려 아래 그림처럼 두개를 나란히 배치시킵니다.
4. 맨 좌측의 화살표를 드래그 하여 TableView Controller에 붙입니다.
이렇게 화살표를 붙이면 TableViewController가 시작점이 되면서 앱을 실행 시키면 가장 먼저 이 Controller가 보여지게 됩니다.
5. 이제 이전의 View Controller(좌측에 있던)는 사용할 일이 없음으로 삭제 합니다.6. 이제 좌측 상단의 object 영역에서 TableView를 선택하고 속성창에서 content를 "static cells"로 변경합니다.
7. Storyboard에 있는 TableViewController의 File's Owner가 ViewController라고 지정해 줍니다.좌측의 "Table view Controller Scene"에서 Table View Controller를 선택하고 오른쪽 상단의 Identity Inspector창에서 Custom Class를 ViewController로 지정합니다.
이상으로 static cell을 사용하기 위한 기본설정은 모두 끝났습니다. 이제 TableView의 속성의 설정을 통해 static cell을 만들어 보겠습니다.왼쪽상단의 TableView를 선택하면 우측 inspector창에 다양한 TableView들의 속성이 나오게 되는데, 이것들을 통해 다양한 모양의 TableView를 구성할 수 있습니다.저는 섹션의 갯수와 table style만 변경하여 다음과 같은 모양을 만들었습니다.
[설정된 화면 모습]
이후 각셀 위로 library창에서 UI들을 끌어다가 셀에다 놓으면 바로 Custom cell을 만들어 낼 수 있습니다.그리고 각 셀을 선택을 하면 각셀의 세부설정(accessory타입 같은)을 할 수 있으니 필요한 데로 만들면 됩니다.
[실행결과 화면]
물론 IBOutlet 과 IBAction으로 연결하여 각 셀의 view들을 제어할 수 있습니다.
Posted by 오늘마감

댓글을 달아 주세요

아이폰어플개발정보2010. 6. 24. 14:10
클랭 (clang) static analyzer
스탠포드 강의 듣다보니, 이런 툴도 소개해주네요..

클랭 이라고 불리는 정적 소스코드 분석 툴입니다. 
xcode에서는 초기화 안된 변수 사용하는 것도 warning도 안나오더군요.
'잠재적인' 에러 및 메모리 릭을 정적 분석해준다고 합니다.
(예전에 Coverity 제품을 1.5천 주고 구매해서 써보기도 했지만, 사실
돈주고 쓰기에는 아깝더군요..)

* clang 다운로드 및 설치
 : http://clang.llvm.org/StaticAnalysis.html 에서 맥용 버전 다운로드해서
   /Developer 밑이나 적절한 실행파일 경로에 풀어 놓는다.
 : .bashrc 로 clang 파일 경로 추가

* 실행
1. Xcode에서 Build Clean 하여, 임시파일들 삭제
2. 분석용 빌드 (프로젝트의 루트 디렉토리에서 다음과 같은 명령으로 빌드, 빌드 타겟이나 SDK 등은 적절한 것으로 변경)
 예) scan-build -k -V xcodebuild -configuration Debug -sdk iphonesimulator2.2.1
3. 분석이 끝나면 자동으로 Safari를 띠워서 결과를 보여줌


아직 초기버전이라 계속적인 발전이 있을거라고는 하는데, 제가 보기엔 정적 분석툴로는
할만큼 하는거 같습니다.

ps. ObjC 컴파일하는데, 초기화 안하고 쓰는 변수조차 warning 안나오는거 보고 좀 거시기했습니다.
(컴파일 옵션 아시는 분?)


출처 : http://blog.naver.com/PostView.nhn?blogId=gonagi&logNo=150047573275
Posted by 오늘마감

댓글을 달아 주세요

아이폰어플개발정보2010. 6. 24. 11:34
static library 만드는 법을 눈으로 배웠습니다.

http://vimeo.com/7699801


https://www.youtube.com/watch?v=fFn2o0aEbRQ

눈으로 배우고도 만들 수가 있었습니다. (영어로 설명을 해서 귀로는 배울 수 없었습니다.)

(^0^)/

Static libraries are particularly useful when you are developing applications for a client who is handling the submission process and you need to deliver your xcode project, but want to keep your source code private. The process is pretty simple and I’ve tried to make this tutorial a simple step by step process. Enjoy!

Step 1:

In your Xcode project control click on your target and choose “Add”, then click “New Target”.

Step 2:

From the Cocoa Touch menu choose “Static Library” and click “Next” button

Step 3:

In the next window name your library.

Step 4:

Now here’s where it gets a little more detailed. You need to drag the files from your Classes directory (or wherever you have the files you’d like to include) into the “Compile Sources” section of your new Static Library. IMPORTANT!! only drag the the implementation files not the header files. FYI, the ones with the .m extension.

Step 5:

Then we need to remove those same files from your main target. Choose the files, the press delete.

Step 6:

Then we need to add the static library to our app. To do this ctrl-click your target and choose “Get Info”.

Then click the + symbol under “Linked Libraries” which should open a dialog with your library in it. Highlight the library and click add.

It should show up in your app’s list of linked libraries after that.

Step 7:

Now edit the  target app’s linking settings and add “-ObjC” to the “Other Linker Flags”. To do this first choose “Edit Project Settings” from “Project” in the file menu. When the settings come up click the build tab and locate the “Other Linker Flags” field.

Step 8:

Next build your target for each SDK target (for example: you will need to build it separately for simulator and device)

Step 9:

You can now remove the source files from your classes folder (only those same .m files) and your project will now be built from the compiled source in your library and your source code will not be available. BACK YOUR PROJECT UP BEFORE YOU REMOVE FILES!!!



출처 : http://blog.naver.com/PostView.nhn?blogId=amoros21&logNo=140107055425
Posted by 오늘마감

댓글을 달아 주세요