2012-06-09 2 views
1

iPhone 용 앱을 만들었습니다. 내 애플 리케이션에서 테이블 뷰, 이미지 뷰,지도 뷰가 없습니다. 모든 데이터는 웹 서비스를 통해 전달됩니다. 그리고 코딩을 통해 이미지 및 다른 뷰에 정적 크기를 부여했습니다. 이제 iPad 용 앱이 필요합니다. 그래서 Ipad에 대한보기 크기의 코딩을 변경해야합니다. 동일한 .m 파일에서 iPhone 및 iPad에 대해 다른 코딩을 수행해야합니다. 누군가는 저에게 그것을하는 방법 저를 건의한다 !!!보편적 인 응용 프로그램에서 동일한 .m 파일에서 아이폰과 ipad에 대한 다른 코딩을 수행하는 방법은 무엇입니까?

if([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) 
{ 
    // place the iphone code 
} 
else 
{   
    // place the ipad code 
} 

당신이 게시물을 참조 할 수 있습니다 : 내가 당신의 질문을 이해까지

+0

내 대답보기 : http://stackoverflow.com/questions/7217277/what-is-the-code-to-detect-whether-ios-app-running-in-iphone-iphone-retina-disp/ 7223662 # 7223662 – Luke

+0

http://devimages.apple.com/iphone/resources/introductiontouniversalapps.pdf – dasblinkenlight

답변

3

당신이 볼 수 있듯이 새로운 프로젝트를 시작할 때 시작 - 보편적 인 App Appdelegate.m 파일에서 apple은 그 코드를 제공합니다. 당신이 아이 패드와 아이폰을 구별 할 수 동일한 방법으로

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; 
// Override point for customization after application launch. 
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) { 
    self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPhone" bundle:nil]; 
} else { 
    self.viewController = [[ViewController alloc] initWithNibName:@"ViewController_iPad" bundle:nil]; 
} 
self.window.rootViewController = self.viewController; 
[self.window makeKeyAndVisible]; 
return YES; 
} 

-

이를 참조하십시오. 감사합니다 !!

+1

현재 두 개의 서로 다른 펜촉 이름을 지정할 필요가 없습니다. ipad 용 nib 파일은 이름 뒤에 ViewController 및 ViewController ~ ipad) "~ ipad"의 컨벤션을 가져야하며, 나머지 IOS는 처리합니다. 이것은 유지하기 쉽습니다. \ m/ – Suhaiyl

+1

@Suhaiyl - 내 마지막 줄을 읽어주세요. 그냥 힌트를 주면됩니다. 내 코드가 사용자가 원하는 것을 설명하는 것 같아요. – TheTiger

+0

고맙습니다 @ VakulSaini ... 그것은 효과가 ...! – roamingsoul