Thật vậy, colorWithPatternImage
không phù hợp với mục đích của bạn trong iOS 6. Tôi sẽ tìm giải pháp sử dụng văn bản của UITextView
làm mặt nạ. Kiểm tra câu trả lời của David cho câu hỏi này: Transparent UILabel textColor on superview.superview (sort of). Anh ta tạo ra một con đường từ chuỗi anh ta muốn xem qua và tạo ra một mặt nạ từ nó. Để kiểm tra tính đầy đủ, hãy xem iOS UIView subclass, draw see-through text to background.
Hope this helps
EDIT
Hóa ra nó không phải là dễ dàng như vậy để đạt được hiệu quả mặt nạ bạn đang theo đuổi với một UITextView trong iOS 6. Tôi đã chỉ cố gắng "bắt chước" giao diện của UITextView bằng cách làm như sau vào một UIView:
UIView *tView = [[UIView alloc] initWithFrame:self.view.frame];
tView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"pattern.jpg"]];
NSString *text = @"Lorem ipsum...";
CATextLayer *mask = [CATextLayer layer];
mask.frame = frame;
mask.backgroundColor = [UIColor colorWithWhite:0 alpha:0].CGColor;
mask.foregroundColor = [UIColor colorWithWhite:0 alpha:1].CGColor;
mask.string = text;
mask.wrapped = YES;
mask.fontSize = 25;
tView.layer.mask = mask;
[self.view addSubview:tView];
đây là một hình ảnh mẫu từ quan điểm cho rằng
Để cuộn chế độ xem này, bạn sẽ cần đặt nó vào bên trong UIScrollView.
UIScrollView *scroll = [[UIScrollView alloc] initWithFrame:self.view.frame];
// Setup tView as above
[scroll addSubview:tView];
[self.view addSubview:scroll];
Nếu bạn làm theo con đường này, bạn cần phải chơi xung quanh với quan điểm cuộn và tView để họ nhìn và cư xử giống như một UITextView.
Nguồn
2014-08-04 07:51:20
Xác định "không hoạt động". – rmaddy
http://stackoverflow.com/questions/9609688/ios-5-1-uicolor-colorwithpatternimage-background-color-draws-solid-black –
của nó về nền văn bản tôi muốn nó trên textColor. – iBhavin