2010-06-26 55 views
12

Tôi đang di chuyển chế độ xem của mình khi trường văn bản được nhấn để có được chế độ xem phù hợp khi bàn phím xuất hiện. Bây giờ, khi nhấn nút Done keyboard, tôi muốn trả lại view về trạng thái ban đầu của nó. Làm cách nào để xử lý một thao tác khi nhấn nút bàn phím xong?Bàn phím xử lý Đã nhấn sự kiện trên Iphone

Trả lời

11

Tạo một IBAction và kết nối với phương thức didEndOnExit của trường văn bản. Sau đó, trong quá trình thực hiện phương pháp này, bạn nên đặt [yourTextFieldOutlet resignFirstResponder];, điều này sẽ hủy kích hoạt trường văn bản.

19

Cách thích hợp để thực hiện việc này là tuân thủ các thông báo UIKeyboardDidShowNotificationUIKeyboardDidHideNotification như được mô tả chi tiết trong Apple's documentation.

Nếu bạn muốn biết khi nút Done đã được ép, thực hiện

- (BOOL)textFieldShouldReturn:(UITextField *)textField 

Trong đại biểu của mình. Nó sẽ được gọi khi nhấn nút quay lại. Xem API documentation để biết thêm chi tiết.

4

@freespace có quyền, đây là tất cả những gì bạn cần làm.

- (BOOL)textFieldShouldReturn:(UITextField *)textField 
{ 
    return [textField resignFirstResponder]; 
} 

Nhấn vào nút xong và nhấn, bàn phím đã biến mất.

0

Nếu bạn chỉ muốn biết rằng Xong được nhấn, bạn có thể yêu cầu được thông báo về sự kiện kiểm soát:

[textField addTarget:self 
       action:@selector(donePressed) 
    forControlEvents:UIControlEventEditingDidEndOnExit]; 

Đó là phiên bản mã của IB của didEndOnExit.

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