2016-06-10 5 views
0

목표 내가 내의 tableview에서 셀을 클릭하고 키보드 편집을 선택한 셀에 레이블을 말했다 때 보여줄 수있는 키보드 (사용자 정의)를 갖고 싶어DidSelectRow가 키보드를 활성화하는 방법?

.

내가 읽고

스택 오버 플로우를 시도하고 다른 검색 한 어떤 스레드/자습서

재치 함께
  1. A Swift example of Custom Views for Data Input (custom in-app keyboard)
  2. How to make custom keyboard only for my app in Swift?
  3. iOS 8: Creating a Custom Keyboard in Swift

h 다른 결과와 검색 (이 스레드 내에서 권장되는 판독 값)을 통해 키보드를 원하는 방식으로 가져 오는 것이 좋았습니다 (앱마다 다르기 때문에 사용자가 키보드를 사용하도록 설정하지 않으려 고합니다). 응용 프로그램), 그러나 아무도 내가 텍스트 필드없이 키보드를 "활성화"할 수있는 방법을 설명하지 못했습니다.

내 생각에 프로세스는 다음과 같습니다. 입력 한 키를 입력 받기 위해 텍스트 필드가있는 키보드가 있습니다. 이 입력은 선택한 셀에있는 레이블로 전송됩니다. 문제는 키보드에서 아무 것도 부르지 않고 보여주는 것입니다 ...

왜 내가 셀에 텍스트 필드를 원하지 않는가? 저는 tableview 셀이 키보드를 활성화시키는 것이 더 스마트하고 우아하다고 생각하기 때문입니다. 나는 다른 애플 리케이션에서 이것을 보았고 어떻게 완료되었는지 알 수 없다.

이 문제에 대한 도움은 매우 감사하겠습니다. 나는 완전히 프로그래밍에 익숙하지 않다. Swift를 사용하고있다. (Obj-C 같은 단서가 없다.)

감사합니다.

+2

UITextField를 사용자 정의 할 수 있기 때문에 "UITextField"("흰색 배경, 테두리 없음"이 아님)가 필요하지 않으며 " 레이블을 편집 할 수 없습니다. "didSelectRowAtIndexPath :', 그냥 [[TheCellTextField becomeFirstResponder]'(또는 그와 비슷한 것) – Larme

+0

레이블을 편집 할 수 없으며 키보드가 표시되지 않습니다. 레이블이 아닌 텍스트 필드 –

+0

Larme과 Duncan에게 감사합니다. 셀을 선택하는 것과는 별도의보기를 호출 할 방법이 없다고 생각합니까? 전체 창을 포함하지 않고 단추를 포함 할 수있는보기 및 텍스트 필드? – TVDN

답변

0

다른 웹 사이트를 둘러싼 많은 논의가 있은 후에, 그것을 말하는 것은 수치 스럽습니다. 그러나 제가 원했던 것은 사실 불가능했습니다. (Duncan). 어떤 이유로 나는 프로그래밍에서 그 단어가 존재하지 않았다고 생각했지만, 슬프게도 거기에 있습니다. 이것은이있을 것이다 -

  1. 있는 tableView :

    나는이 전망이 : 글쎄, 난이 문제를 해결했던 방법은 내가 이미 읽은 코멘트뿐만 아니라 자원의 재료로 여기에 대답했다 값을 편집하고 싶은 항목의 목록. 여러 레이블 중 하나는 사용자가 편집 할 수 있습니다.

  2. keyboardView - 사용자 입력을 허용하는 사용자 정의 키보드.

키보드의 경우 "데이터 입력을위한 사용자 지정보기의 신속한 예"에서 설명한대로 대리자 메서드를 사용했습니다. 이것은 완벽하게 작동했으며 데이터는 에 keyWasTapped 함수로 전송됩니다.

다음은 tableView입니다. 맞춤형 셀에 3 개의 레이블이 있는데, 하나는 valueLabel입니다. 나는 사용자가 상호 작용하는과의 tableview 뒤에 숨겨진 내 스토리 보드에 TextField를 추가했다과 didselectrow에 내가 키보드 소환 명령 포함 : 나는 텍스트 필드에서 텍스트를 잡아 것입니다 거기에서

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { 
     textField.becomeFirstResponder() 
} 

및 내 사용자 지정 셀의 UILabels를 업데이트하십시오. 최소한이 방법으로 텍스트 필드가 아닌 셀을 선택할 수 있습니다. 그래서 제가 원했던 대답이 답장의 조합이라는 점을 고려할 때 여기에서 말하는 것이 가장 좋을 것이라고 생각했습니다.

Sandeep과 Larme에게 감사드립니다.

0

TVDN은

셀에없는 레이블을 텍스트 입력란을 가지고 : 사용자 지정 셀 클래스에 함께 IBOutlet을 만들기는 cellForRowAtIndexPath

let tableCell = self.tableView.dequeueReusableCellWithIdentifier("cell") as! myCell 
tableCell.yourTextField.resignFirstResponder() 

과에 TextField를 ffrom didSelectRowAtIndexPath

let tableCell = self.tableView.cellForRowAtIndexPath(indexPath) 
self.tableView.dequeueReusableCellWithIdentifier("cell") as! myCell 
    tableCell.yourTextField.becomeFirstResponder() 
+0

안녕 Sandeep, 빠른 답장을 보내 주셔서 감사합니다! 확실히 내 응용 프로그램에서 이것을 사용하지만 키보드로 텍스트 필드를 갖고 싶습니다. s : 테이블 뷰에서 셀을 선택하면 어떻게 뷰를 호출 할 수 있습니까 (전체 윈도우를 커버하지는 않습니다). 이 견해는 무엇이든 될 수 있습니다. 따라서 키보드를 만들 수도 있습니다 ... 아마 여기에 잘못된 질문을하고있을 수도 있습니다 ...? – TVDN

관련 문제