2013-09-26 2 views
0

나는 엑스 코드 4.6 및 iOS 6. 지금 엑스 코드 5텍스트 입력하여 팝업 7

를 사용하여 아이폰 OS 7로 업그레이드하고 구축 된 응용 프로그램이 난에 완벽하게 작동이 코드를 iOS 6. UITextField를 사용하여 팝업을 가져 오는 것은 무엇입니까? 사용자는 원하는 텍스트를 입력하고 OK를 누릅니다. 나는 그들의 텍스트를 가지고 그것을 UILabel에 넣는다.

내가 가진 문제는 iOS 7에서이 팝업 텍스트 상자를 가져올 때 편집 할 수 없다는 것입니다. 만지는 것은 아무 것도하지 않습니다. 어째서?

는 다음 코드와 스크린 샷

// ************ 
// ENTER TEXT 
// ************ 

-(IBAction)insertText 
{ 
    UIAlertView* dialog = [[UIAlertView alloc] initWithTitle:@"Enter Text \n" 
                message:@"\n\n Keep it short and sweet" 
                delegate:self 
              cancelButtonTitle:@"Cancel" 
              otherButtonTitles:@"OK", nil]; 

    nameField = [[UITextField alloc] initWithFrame:CGRectMake(20.0, 45.0, 245.0, 25.0)]; 
    [nameField setBackgroundColor:[UIColor whiteColor]]; 
    [dialog addSubview:nameField]; 
    [dialog show]; 
} 

enter image description here

+0

나중에 참조 할 수 있도록 - http://stackoverflow.com/questions/6319417/whats-a-simple-way-to-get-a-text-input-popup-dialog-box-on-an-iphone –

답변

2

사용하는 대신 제공된 API이 해킹입니다. 자신 만의 텍스트 필드 (실제로는 지원되지 않음)를 추가하는 대신 경고보기의 alertViewStyleUIAlertViewStylePlainTextInput으로 설정하십시오. 이렇게하면 경고보기에 지원되는 텍스트 입력 필드가 표시됩니다.

+2

To 이 답변을 완료하십시오 : iOS 7이 UIAlertView에 하위보기 추가를 지원하지 않기 때문에 해킹이 작동하지 않습니다. 그러나 iOS 6은 그랬습니다. –

+0

'UIAlertView'는 서브 뷰를 지원하지 않습니다. 이전 버전의 iOS에서도 작동합니다. 차이가 있습니다. – rmaddy

+1

UIAlertView는 UIView에서 상속됩니다. UIView는 addSubview :를 지원합니다. 따라서 UIAlertView는 addSubview를 지원합니다. 사용하지 못하는 한. 물론 공식적으로 지원되지는 않았지만 (Apple에 의해 문서화 된 의미), 지원되었습니다. –