2012-03-18 29 views
5

Tôi có một UITextView và nó có một lề kỳ lạ ở phía trên, không chắc chắn những gì gây ra điều này. Dưới đây là những hình ảnh, nền là màu cam:Biên độ kỳ lạ của UITextView trên đầu trang?

enter image description here

Dưới đây là mã của tôi có liên quan:

textViewTest = [[UITextView alloc] initWithFrame:CGRectMake(135, 0, 150, 68)]; 
[textViewTest setContentInset:UIEdgeInsetsZero]; 
[textViewTest setUserInteractionEnabled:NO]; 
[textViewTest setBackgroundColor:[UIColor orangeColor]]; 
[textViewTest setTextColor:[UIColor whiteColor]]; 
//[textViewTest setFont:[UIFont fontWithName:@"MuseoSans-500" size:12.0]]; 
[textViewTest setText:@"Spooky (rename)\nCreated: 4/10/11\nUpload Youtube\nDelete | Favorite"]; 

Những gì tôi muốn các văn bản trong UITextView (textViewTest) là không có bất kỳ không gian từ trên xuống (lề). Hiện tại, có khoảng 8-10 px từ đầu màu cam, sau đó văn bản bắt đầu.

+0

là trong một tế bào? – Lunayo

+0

yea nó ở trong một UITableViewCell – 0xSina

+0

vì vậy bạn muốn sắp xếp các màu cam xem giống như xem redcolor? – Lunayo

Trả lời

19

Nếu bạn chỉ muốn chuyển văn bản, hãy thử

[textViewTest setContentInset:UIEdgeInsetsMake(<#CGFloat top#>, <#CGFloat left#>, <#CGFloat bottom#>, <#CGFloat right#>)]; 

đâu một số dương di chuyển khung về phía giữa, một tiêu cực di chuyển nó ra từ giữa.

Ví dụ: [textViewTest setContentInset:UIEdgeInsetsMake(-5, 0, 5,0)], sẽ di chuyển văn bản lên 5 pixel!

+0

Giải pháp này là tốt, nhưng tại sao nó lại xảy ra? Đối với một số lý do trên iOS7 các điều khiển có lề khoảng 40 pixel không có lý do. – bashan

+0

@bashan cho lề 40 pixel, bạn cần thực hiện việc này: http://stackoverflow.com/questions/18931934/blank-space-at-top-of-uitextview-in-ios-7 – strange

+0

Cảm ơn. Tôi đã giải quyết nó theo cách này. Tôi chỉ tự hỏi tại sao điều đó lại và tại sao nó lại khó kiểm soát ... – bashan

-1

Cố gắng kích thước xem văn bản của bạn để phù hợp với văn bản của nó: [textViewTest sizeToFit];

+0

nop, không hoạt động. – 0xSina

-1

Tôi nghĩ rằng bạn muốn sắp xếp các điểm màu cam giống như quan điểm màu đỏ. khung xem màu đỏ là gì? Tôi nghĩ rằng đó là vấn đề của khung.

tại sao không sử dụng màu đỏ nhìn màu y như

textViewTest = [[UITextView alloc] initWithFrame:CGRectMake(135, 
                  [redView frame].origin.y, 
                  150, 68)]; 
+0

Điều tôi muốn là văn bản trong UITextView (textViewTest) không có bất kỳ khoảng trống nào từ trên cùng (lề). Hiện tại, có khoảng 8-10 px từ đầu màu cam, sau đó văn bản bắt đầu. – 0xSina

+0

oh! Tôi đoán những gì bạn muốn là căn chỉnh theo chiều dọc. và không có cách sắp xếp văn bản dọc nào dễ dàng trong UITextView kiểm tra liên kết này http://imagineric.ericd.net/2011/03/10/ios-vertical-aligning-text-in-a-uitextview/. Hoặc bạn có thể thay đổi nó thành một UITextField và thêm nó vào một khung nhìn. Và đặt 'contentVerticalAlignment' thành' UIControlContentVerticalAlignmentCenter' – Lunayo

2

Trong viewDidLoad thêm:

self.automaticallyAdjustsScrollViewInsets = NO; 
Các vấn đề liên quan