2010-04-16 55 views
5

Tôi có một yêu cầu mà tôi có một trường văn bản trong một khung nhìn. Khi tôi muốn mở khung nhìn bằng cách chuyển đổi tab (Ứng dụng TabBased), lần đầu tiên khi khung nhìn được nạp bàn phím xuất hiện vì tôi đã gọi phương thức loadview. Nhưng khi tôi chuyển sang tab2 và lại chuyển sang tab1 lần nữa, chế độ xem tải không được gọi. Tôi muốn bàn phím xuất hiện mỗi lần tôi mở trang tab1.Cách mở chế độ xem bằng bàn phím xuất hiện khi chế độ xem đã được tải?

Trả lời

10

Sử dụng -viewWillAppear: trong điều khiển điểm của bạn để gửi lĩnh vực văn bản của bạn nhắn -becomeFirstResponder, ví dụ:

- (void) viewWillAppear:(BOOL)animated { 
    [super viewWillAppear:animated]; 
    [myTextField becomeFirstResponder]; 
} 
+0

Tôi đã làm điều tương tự ... Nhưng phương pháp viewWillAppear không được gọi mọi ...... Đây là Mã số - (void) viewWillAppear: (BOOL) hoạt ảnh { [super viewWillAppear: animated]; \t [searchForProduct trở thànhFirstResponder]; } Vui lòng trợ giúp –

+1

Mã bạn nên hoạt động, giả sử tất cả các đối tượng được khởi tạo và kết nối. Hãy thử thêm câu lệnh 'NSLog' để xác minh rằng' -viewWillAppear: 'được gọi. Ngoài ra, hãy đảm bảo 'searchForProduct' không phải là' nil' và/hoặc nó được nối đúng cách nếu bạn đang sử dụng Trình tạo giao diện cho chế độ xem của mình. –

+0

searchForProduct không được phát hành .. Nó chứa phân bổ bộ nhớ ... Vấn đề là phương thức viewWillAppear không bao giờ được gọi là ... –

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