2011-03-02 3 views
1

저는 5-6 개의 화면과 사용자 정보를 저장하는 데이터 소스로 멀티 뷰 앱을 만들고 싶습니다. 이전에 멀티 뷰 앱을 만든 적이 없었습니다. 시작하는 방법에 대한 좋은 아이디어가 있습니다.하지만이 기능을 제대로 지원하려면 앱을 "구조화"하는 것에 대한 몇 가지 권장 사항을 듣고 싶습니다.첫 번째 iPhone 멀티 뷰 앱 - 일부 지침

아주 간단한 비유로 웹 사이트에서 배경색을 만들 수 있습니다 ... 단색 이미지를 사용하거나 단순히 배경색 스타일을 사용할 수 있습니다. 둘 다 일을 끝내지 만 스타일을 사용하는 것이 좀 더 쉽고 효율적입니다.

나는 단지 오른발에서 시작하고 싶습니다. 내 모든 기능을 하나의 클래스 '.m/.h 파일에 보관해야합니까? 서로 다른 화면에 대한 최선의 방법은 무엇입니까?

Objective-C와 Xcode에 대해 더 잘 이해하면 다른 사람들을 도와 주겠다.

답변

0

대부분의 경우 Apple 설명서는 종종 좋은 출발점입니다. 먼저 here을 시도하십시오. 희망이 도움과 행운을 빕니다!

0

저는 UINavigationController를 사용했습니다. 싱글 톤으로 만들었고 정적으로 액세스하여 콘트롤러를 쉽게 밀고 팝 할 수있었습니다. (적당히 좋은 튜토리얼 here). 이것은 매우 가벼우 며 신속하게 처리 할 수있는 충분한 문서를 제공합니다.

그러나 가장 좋은 방법은 Three20 프레임 워크의 TTNavigator입니다. 무슨 또한 멋진 것입니다

[[TTNavigator navigator] openURLAction:[[TTURLAction actionWithURLPath:@"ac://results/searchResults/"] applyAnimated:YES]]; 

을 : 다음

//(In your app delegate) 
//Start up the navigator 
TTNavigator* navigator = [TTNavigator navigator]; 
navigator.persistenceMode = TTNavigatorPersistenceModeTop; 

//Map url's to controllers 
TTURLMap* map = navigator.URLMap; 
[map from:@"*" toViewController:[TTWebController class]]; 
[map from:@"ac://search" toViewController:[SearchViewController class]]; 
[map from:@"ac://results/(initToView:)" toViewController:[ResultsViewController class]]; 

는 컨트롤러로 이동합니다 : 한마디로 자사의 내부 URL을 호출하여 화면에 새보기를 밀어 수 있습니다 UINavigator을 강화 @ "ac : // results /"를 우리가 매퍼에서 정의한대로 @ "searchResults"를 ResultsViewController ("initToView :")의 init 메소드에 전달하는 경우

모두 최상 !

+1

IMO, three20은 유망 해 보입니다.하지만 여전히 베타 버전으로 보입니다. 사과 우수 프레임 워크의 출발/재개발이며, 사과에 비해 문서화가 잘되어 있지 않으며 여전히 열린 버그가 많이 있습니다. 나에게 그것은 사과 프레임 워크 또는 적절한 MVC 디자인을 배우지 않고 iPhone 응용 프로그램을 개발하기 시작하는 webdevelopers의 지름길처럼 보이지만 결국 내 의견은 페이스 북에서 사용하고 페이스 북은 가장 다운 된 응용 프로그램입니다. – Intentss

1

iPhone/iPad를 처음 사용하는 경우 CS193P 강의를 확인해보십시오. 또한 iTunes에서 자주 시청할 수 있습니다. 그들은 Objective-C/Cocoa Touch에서 iPhone 프로그래밍에 대한 좋은 개요와 방법을 설명합니다. 그것은 올바른 방향으로 시작된 사람을 얻을 것입니다.

귀하의 특정 질문에 관해서. 코딩을 시작하십시오. 6 개월 만에 당신이 쓴 eveything은 cr * p이며 어쨌든 다시 써야 할 필요가 있음을 깨닫게 될 것입니다. 그러나 당신이 쓴 것이 cr * p라는 것을 깨닫게 될 유일한 방법입니다 ...

몇 가지 제안 사항, 특정 여러 개 볼 응용 프로그램 (거의 모든 응용 프로그램 인) 나는 다른 사람이에 확장 할 수 있습니다 확신 ...

  1. 학습 (대 다른보기와 viewcontrollers 사이의 코드 상호 작용 (가능한 한 많이) 인터페이스 빌더 사용). 예를 들어 트위터 앱은 Interface Builder를 전혀 사용하지 않습니다.
  2. IB를 사용하는 경우 모든 것을 하나의 .xib로 덤프하지 마십시오. 그들을 어지럽히는 방법을 배우십시오. viewcontroller 당 하나의 .xib가 있어야합니다. 나는 IB UITabBarController 나 IB UINavigationController를 결코 사용하지 않는다. 그것들은 초기화되고 코드에서만 사용된다.
  3. MVC (Model view controller)를 절대적으로 배우십시오.
+0

나는 그것에 동의합니다. –

관련 문제