2012-11-22 1 views
0

현재 개발중인 범용 앱에 대한 우려 중 하나입니다. 난 그냥 기능 개발로 마무리하고 눈 사탕 (애니메이션)을 추가해야합니다. 이제 단일 iPhone 또는 iPad 앱에서 프레임, 경계를 설정하고보기, 레이어 등을 하드 코드 된 값으로 이동하도록 설정하는 것이 궁금합니다.보편적 인 프로젝트에서의 애니메이션 및 프레임 경계 처리 문제

이제 어떻게 다른 장치 프레임과 경계를 처리하겠습니까? 의미 당신은 부모보기 바깥 쪽에서 UIImageView를 이동하여 원하는 위치로 만들려고합니다. 실행중인 장치를 테스트하면서 다르게 처리합니까?

감사합니다.

답변

1

당신은 당신의 AppDelegate

- (BOOL) ISIPAD { 
    return (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad); 
} 

을하는 방법을 추가 할 때마다 당신이 애니메이션을 만들고 참조 할 수있다. 그런 다음 클래스에 화면 폭이있는 변수가 있으면 viewDidLoad 또는 init 메소드에서 확인해야합니다. 그런 다음 동적 변수를 사용하여 애니메이션을 수행 할 수 있습니다. 화면의 중앙에 버튼을 배치하려면, 당신은 할 수 :

screenvariables을 고려
[UIView animateWithDuration:1.0 animations:^{ 
    UIButton *yourButton; 
    yourButton.frame = (CGRect){.origin = CGPointMake(screenwidth/2.0f-yourButton.frame.size.width/2.0f, screenheight/2.0f - yourButton.frame.size.height/2.0f), .size = yourButton.frame.size}; 
}]; 

이 당신의 init 또는 viewDidLoad 방법에 설정되어,이 화면의 중앙에 버튼을 넣어 것입니다.

+0

고맙습니다. 이런 식으로해야한다고 생각했습니다. 단지 로직을 정의하는 것보다 프로젝트를 분리하는 것이 더 나은지 궁금하지만 화면의 일부 값에 관한 한 그것이 나쁜 옵션/디자인이되어서는 안된다. 화면 너비와 애니메이션에 필요한 값을 반환하는 도우미 클래스를 만드는 것은 현재있는 스토리 보드 뷰 컨트롤러에 달려 있습니다. 시간 내 주셔서 감사합니다. –

관련 문제