2011-11-23 2 views
0

사용자의 사용자 이름과 암호를 묻는 프롬프트를 표시하고 싶습니다.텍스트 필드가 위로 이동하지 않는 UIAlertView

UIAlertView를 표시하고 UITextFields를 하위보기로 추가하여이 작업을 수행하고 있습니다.

최근 내 프로젝트를 XCode 4.2로 옮겼으며 모든 프로젝트 설정을 업데이트했습니다. 기본 SDK는 iOS 5.0으로 설정되고 배포 목표는 4.0으로 설정됩니다.

나는 armv7 아키텍처 용으로 만 만들어 졌으므로 armv6도 포함하도록 변경 했으므로 iPhone 3G도 지원하고 싶습니다.

이렇게하면 UIAlertView가 이전과 같이 움직이지 않고 현재 키보드로 표시되고있을 때 나타났습니다. 애플 문서에서 UIAlertViews (http://developer.apple.com/library/ios/#documentation/uikit/reference/UIAlertView_Class/UIAlertView/UIAlertView.html)를 하위 클래스 화해서는 안되며, 그래서 내가하는 일을 바꿨다. 이것은 문제를 해결하지 못했습니다.

빌드 설정 - "활성 아키텍처 만 빌드"를 YES로 설정하여 내 전화 (iPhone 4, 그래서 armv7 아키텍처)에서 작동시킬 수 있다는 것을 알아 챘습니다.

나는이 문제가 armv6을 빌드하려고 시도하는 것과 관련이 있다고 생각한다. (실제로 빌드하려고 시도한 아키텍처에서 이걸 제거하면 제대로 움직이는 경고를 받는다.)

지금 내 질문에 익숙해 져야한다고 생각합니다. 왜 이것이 어떻게 행동하는지 이해하기가 어려워요. iOS 4 이상에서 UIAlertView에 텍스트 필드를 추가 할 때 수동으로 경고를 이동할 필요가없는 어딘가 (지금 링크를 찾을 수 없음)를 읽었습니다. 적어도 iOS 4 이상에서는이 두 아키텍처에서 작동하지 않아야합니다.

또한 어떻게 armv6 용으로 빌드 할 수 있으며 올바르게 위로 이동하는 경고가 있습니까?

편집 : 어쩌면 틀렸을 수도 있지만 앱을 배포 할 수있는 휴대 전화의 인스턴스가 2 개인 것으로 나타났습니다. 첫 번째와 건물을 선택하면 UIAlertViews가 필요할 때 위로 움직이지 않는 앱을 ​​제공하지만 두 번째 앱을 선택하면 제대로 작동합니다. ... 스크린 샷을 게시,하지만 난 새로운 사용자입니다 그래서 나는 권한이 없습니다 아직겠습니까

답변

1

오키, 나는 작품과 유도 할 수있는 해결책을 마련하기 위해 관리했습니다

올바른 위치에 UIAlertView 수 있지만 여전히 문제의 근본 원인을 완전히 확실하지 않습니다.

는 I는 UIAlertViewDelegate 방법 willPresentAlertView: 응답 및 수행하여 해결 다음

그것은 UIAlertView 화면의 중심에 있고, 그이면 (그것을 이동 여부를 확인
- (void) willPresentAlertView: (UIAlertView *) alertView { 

    UIWindow *keyWindow = [[UIApplication sharedApplication] keyWindow]; 

    if (keyWindow.center.y - alertView.center.y < 0.001f) { 

     CGPoint center = [alertView center]; 
     center.y = center.y - 108.0f; 
     [alertView setCenter:center]; 
    } 
} 

즉 OS hasn 경우 이미 올바른 위치를 계산하지 않았다). 참고 : 장치가있는 특정 방향에 대한 점검을 추가 한 다음 세로 및 가로 방향 모두에서 작동하도록하려면 경고가 그에 따라 이동되는 양을 조정해야합니다.

관련 문제