2009-10-08 27 views
5

Làm cách nào để đặt văn bản readonly bên trong một UITextField. Ví dụ: các trường "Tên" và "Bảo mật" trong cài đặt "Chạm vào các mạng khác" trên iPod có chứa các từ "Tên" và "Bảo mật", với vùng có thể chỉnh sửa ở bên phải. UITextField có thuộc tính "trình giữ chỗ" nhưng biến mất ngay khi tôi nhập.Đặt tiêu đề chỉ đọc trong một UITextField

Trả lời

2

Những gì bạn thấy trong các trường đó không phải là UITextField có nhãn nhưng UITableViewCell có hai điều khiển trên nhãn - nhãn và trường văn bản không có đường viền.

+0

Tôi chỉ cần có hai textfields vì vậy tôi đã hy vọng để tránh phải thực hiện một UITableView. –

+0

Nó không thực sự sai hoặc khó để thực hiện một UITableView để lưu trữ hai trường văn bản - và có quyền kiểm soát UITableViewCell cho nhãn là một tiền thưởng. – rein

+0

Bạn thực sự không cần triển khai UITableView. Chỉ cần thêm một UILabel và một UITextField (không biên giới) –

5

Đơn giản chỉ cần đặt dòng này nơi txtname là đối tượng của UITextField:

txtName.userInteractionEnabled = NO; 
+0

Điều đó làm cho văn bản textfield không thể chỉnh sửa được, nhưng câu hỏi ban đầu là về việc có một nhãn đính kèm trước trường văn bản mà không phải tạo điều khiển thứ hai. +1 từ tôi –

0

Chức vụ một UILabel bên trong khung của UITextField nơi bạn muốn, sau đó đặt UITextFields "leftView" tài sản cho UILabel. Hãy chắc chắn rằng bạn thiết lập UITextFields "leftViewMode" tài sản để UITextFieldViewModeAlways

Bộ luật nên giống như thế này ..

UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(20, 20, 200, 44)]; 
textField.backgroundColor = [UIColor whiteColor]; 
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 50, textField.frame.size.height)]; 
label.font = [UIFont boldSystemFontOfSize:14.0f]; 
label.text = @"Name:"; 
textField.leftView = label; 
textField.leftViewMode = UITextFieldViewModeAlways; 
[self.view addSubview:textField]; 
Các vấn đề liên quan