2010-12-16 4 views
1

전적으로 Win32/Delphi 배경에서 왔기 때문에 나는 새로운 Mac 중심 환경에 다소 의아해합니다. NIB 파일을 사용하지 않고 코드 만 (C# 또는 Delphi Prism)에서 창을 여는 방법에 대한 예제를 찾고있었습니다. 슬프게도 나는이 주제에 대해 거의 안다. 모든 예제에서는 Interface Builder를 독점적으로 사용합니다.iPhone 및 OS X에서 NIB 파일을 사용하지 않고 창을 만들 수 있습니까?

분명히 어딘가에 API 호출이 있어야합니까? 또는 적어도 런타임에서 NIB를 구성하고 메모리에서로드 할 수 있습니까?

+0

afaik 당신은 C#에서 아이폰 응용 프로그램을 작성할 수 없습니다. 당신은 객관적인 c를 사용해야합니다. Xcode를 사용하면 "창 기반 프로젝트"를 시작할 수 있으며 모든 것이 완료됩니다. 나는이 창 밖에서 창을 만들 필요가 없다. –

+0

MonoTouch (http://monotouch.net/ 참조)를 사용하여 C# 및 모든 .NET 언어로 iPhone 응용 프로그램을 만들 수 있습니다. MVC 프로그래밍의 오버 헤드를 피하려면 이벤트 기반 임시 환경 (예 : Windows의 Delphi)에서 가져온 구성 요소를 사용해야합니다. –

+0

FreePascal의 Arm 컴파일러 (http://wiki.freepascal.org/iPhone/iPod_development)를 사용하여 기본 iPhone 응용 프로그램을 만들 수도 있습니다. 사전 제작 된 템플릿으로 X 코드에 연결할 수도 있습니다. 문제는 운영 시스템의 호출을 적절한 클래스로 래핑하는 것입니다. 애플이 일반적으로 다른 곳의 중도를 허용 할 때 MVC가 적용된다는 것이 이상하다는 것을 알게되었습니다. –

답변

1

This article 좋은 시작이 될 수 있습니다. iPhone에 녹색 창이 생성되지만 iPad에서도 사용할 수 있습니다.
C#/Delphi/.NET이 아닌 Cocoa 프레임 워크를 사용하여 Objective-C를 사용합니다.
그래서 .NET 언어로 번역하는 방법을 찾아야합니다.

- jeroen

+0

찾았습니다. 생성자 중 하나에서 래핑되었습니다. UIWindow myWindow = new UIWindow (screen.Frame); 네이티브 호출 (예 : FreePascal에서 CreateWindowFromFrame (Const aRect : PRect)) 재미있는 내가 전에 이것을 발견하지 못했습니다. 모두 감사합니다. –

+0

다행입니다. 도움이 될 수있어서 다행입니다. 이메일로 알려주십시오. –

0

Objective-C를 사용하여 C#으로 iPhone 프로그램을 작성할 수 없습니다. 인터페이스 빌더를 사용하는 대신 수작업으로 기본 UI를 만들 수 있습니다. iOS에서 뷰 (윈도우, 라벨, 버튼 등)를 생성하는 주요 기능은 CGRectMake 함수를 사용하는 것입니다.

CGRectMake 지정된 좌표와 크기의 값을 가진 사각형을 반환합니다. CGRect CGRectMake (CGFloat x, CGFloat y, CGFloat width, CGFloat height);

예를 들어, 윈도우를 만들려면이 작업을 수행 할 수 있습니다

UIWindow * window = [[UIWindow alloc] initWithFrame:CGRectMake(<#CGFloat x#>, <#CGFloat y#>, <#CGFloat width#>, <#CGFloat height#>)]; 

을 레이블을 만들기위한, 당신은이 작업을 수행 할 수 있습니다 또는 :

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(<#CGFloat x#>, <#CGFloat y#>, <#CGFloat width#>, <#CGFloat height#>)]; 

당신 만 지정해야 폭, 높이 및 시야의 위치를 ​​지정합니다.

당신은 특별히이 하나, 자세한 내용은 사과 developper 페이지에 갈 수 http://bit.ly/eZpDoC

미안 내가 전에 분명하지 않다 경우)

+0

CGRectMake? WTF? – pt2ph8

+0

무엇이 문제입니까? – Dimitri

+0

위의 내 의견을 참조하십시오. MonoTouch와 freepascal을 모두 기본 iPhone 개발 용으로 사용할 수 있습니다. 뷰를 만드는 것은 쉽지만, 윈도우 객체와 강제 "nib"파일은 관련된 메신저를 사용합니다. –