2012-06-28 31 views
10

Tôi có một số UITableViewController với khoảng 20 ô tĩnh, một số ô này có UITextField s bên trong và một số chỉ để chọn dấu kiểm. Bảng này có giá trị khoảng 1,5 lượt xem, do đó việc di chuyển là bắt buộc để có được ở các trường văn bản thấp hơn.UITableViewController không cuộn chế độ xem khi bàn phím xuất hiện

Khi tôi nhấp vào bên trong một trường văn bản ở cuối bảng, bàn phím bật lên vì nó nhưng sau đó xuất hiện trên ô/trường văn bản.

Tôi đã bị ấn tượng (Từ tài liệu của Apple và ở nơi khác) rằng lớp UITableViewController xử lý cuộn chế độ xem tự động khi bàn phím xuất hiện theo bất kỳ hướng nào và thay đổi bảng nhìn để ô hiển thị, điều này không xảy ra Tuy nhiên.

Chân dung iOS 5.1, iPad.

+1

bản sao có thể có của [Cách cuộn UITableviewcell cuộn lên khi bàn phím xuất hiện?] (Http://stackoverflow.com/questions/8338737/how-to-scroll-the-uitableviewcell-scroll-up-when-the -keyboard-xuất hiện) – rishi

+1

Không phải là một IMO dup, cái này đề cập đến Static Cell TVC của –

+0

Liên kết mà Rishi chỉ thực sự đã làm việc cho nội dung bảng tĩnh của tôi. Nhưng như tôi đã nói, tôi mặc dù điều này có nghĩa là để làm việc tự động khi sử dụng UITableViewController mà không cần phải quản lý theo chương trình di chuyển. – GeoffCoope

Trả lời

69

Hãy chắc chắn rằng nếu bạn đang trọng viewWillAppear mà bạn gọi

[super viewWillAppear:animated]; 

Nếu bạn không, Scroll View sẽ không di chuyển lên đúng cách.

Swift

super.viewWillAppear(animated) 
+0

Chưa sử dụng phương pháp đó. thanks anyway – GeoffCoope

+1

Điều này làm việc cho tôi (và tôi nên đã được gọi này anyway). Cảm ơn. – Snips

+2

Ồ! Cảm ơn bạn rất nhiều, tôi nghĩ rằng tôi sẽ không bao giờ làm cho nó hoạt động tự động một lần nữa) – DanSkeel

1

Tôi chạy vào vấn đề này bản thân mình. Tôi chỉ chuyển đổi điều khiển quan điểm của tôi từ một UIViewController đến một UITableViewController ngoài thêm [super viewWillAppear:animated]; cuộc gọi, bạn sẽ cần phải loại bỏ những dòng này:

[self.tableView setDataSource:self]; [self.tableView setDelegate:self];

Khi họ không còn cần thiết và setDelegate can thiệp vào bàn phím di chuyển hành vi.

4

Tôi đã tìm thấy những câu trả lời này không chính xác. Sau một thời gian, tôi nhận thấy rằng nếu bạn đẩy một bộ điều khiển nó sẽ không hoạt động ... nhưng nếu bạn trình bày nó một cách bình thường .. bảng sẽ tự động di chuyển đến trường văn bản đã sử dụng.

Hy vọng rằng sẽ tiết kiệm thời gian và căng thẳng cho bất kỳ ai.

+0

Tôi gặp vấn đề tương tự khi tôi đang sử dụng chế độ xem vùng chứa. – RyanJM

Các vấn đề liên quan