Tôi đang sử dụng UIImageView
cho mỗi UITableViewCells
làm hình thu nhỏ của mình. Mã của tôi sử dụng SDWebImage
để lấy các hình ảnh đó một cách không đồng bộ từ chương trình phụ trợ của tôi và tải chúng vào và sau đó lưu vào bộ nhớ cache chúng. Điều này làm việc tốt.Sử dụng cornerRadius trên UIImageView trong UITableViewCell
My UIImageView
là hình vuông 50x50, được tạo trong Trình tạo giao diện. Nền của nó là đục, màu trắng (giống như màu nền UITableViewCell
của tôi, để thực hiện). Tuy nhiên, tôi muốn sử dụng các góc trơn tru để có tính thẩm mỹ tốt hơn. Nếu tôi làm điều này:
UIImageView *itemImageView = (UIImageView *)[cell viewWithTag:100];
itemImageView.layer.cornerRadius = 2.5f;
itemImageView.layer.masksToBounds = NO;
itemImageView.clipsToBounds = YES;
tableview My giảm khoảng 5-6 khung hình ngay lập tức, đóng nắp khoảng 56 FPS trong di chuyển nhanh (mà không quan trọng), nhưng khi tôi kéo và kéo điều khiển làm mới, nó chậm một chút và giảm xuống còn khoảng 40 FPS. Nếu tôi xóa dòng cornerRadius
, tất cả đều ổn và không bị trễ. Điều này đã được thử nghiệm trên một chiếc iPod touch 5G sử dụng dụng cụ.
Có cách nào khác để tôi có thể làm tròn số UIImageView
cho các ô của mình và không bị ảnh hưởng không? Tôi đã tối ưu hóa cellForRowAtIndexPath
và tôi nhận được 56-59 FPS trong khi di chuyển nhanh chóng mà không cần cornerRadius
.