2013-04-18 1 views
0

내 응용 프로그램에는 전자 메일 주소가 포함 된 UITextView이 있습니다. 나는 터치 이메일 주소를 누르고 있으면 다음 작업 시트는에 버튼을 다음과 같이 팝업 :iOS에서 동작을 듣는 방법 생성 된 동작 시트

  • "새 메시지"
  • 등 "연락처에 추가"를

"새 메시지"단추를 클릭하여 사용자 지정 작업을 수행하는 방법?

+0

나는이 행동 시트를 가로 챌 수 있다고 생각하지 않습니다. OS가 생성 한 액션 시트이므로, 객체를 델리게이트로 설정할 수 없습니다. 있는 그대로 또는 링크 검색을 해제하십시오. –

답변

1

당신은 actionSheets의 대리인으로 당신의 ViewController를 설정 한 다음

-actionSheet:clickedButtonAtIndex: 

그런 다음 당신이 필요로하는 작업을 수행 구현해야한다.

+0

이 위임 메서드는 응용 프로그램이 아니라 iOS에서 생성 한 작업 시트로 인해 호출되지 않습니다. – Ram

1

먼저 당신이 당신의 .h 파일에 UIActionSheetDelegate을 구현하고 그것을 ..

- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex 
{ 
    if (buttonIndex == 0) 
    { 
     // here you can perform new message action 
    } 
    else 
    { 
     // here you can perform add new contact action 
    } 
} 
1

당신은 UITextView를 서브 클래스와 -setText: 방법을 덮어해야합니다. 맞춤 구현에서는 서브 클래스에 UIDataDetector을 추가해야합니다.

NSDataDetector 및 해당 구현에 익숙하지 않은 경우 TTTAttributedLabel 구현을 살펴보십시오. UILabel은 데이터 탐지와 잘 발달 된 대표 프로토콜을 사용하여 완전히 대체되었습니다.

코드의 대부분을 채택 할 수 있습니다.