2009-11-28 42 views
8

Tôi có xem bảng trong đó Tôi muốn xem hình ảnh của tôi để thiết lập lại các khungLàm thế nào để thiết lập các khung cell.imageview

tôi đã sử dụng đoạn mã sau:

[[cell imageView] setFrame:CGRectMake(0,0,32,32)]; 

Nhưng không có gì đang làm việc

Vui lòng cho tôi biết cách thay đổi kích thước phần imageView mặc định

Cảm ơn

+5

Đây là câu hỏi thứ 8 của bạn về stackoverflow, nhưng không có câu hỏi nào của bạn có câu trả lời được chấp nhận. Bạn nên thay đổi điều đó và chấp nhận câu trả lời đã giúp bạn. – Pascal

Trả lời

2

UITableViewCell có bố cục cố định, tùy thuộc vào kiểu bạn sử dụng khi khởi tạo. Bạn không thể thay đổi bố cục đó, vì ô sẽ đưa ra các bản xem phụ của nó vì nó thích có chúng hơn.

Nếu bạn muốn sử dụng bố cục khác, bạn sẽ phải tạo ô của riêng mình và sử dụng ô đó. Trích dẫn tài liệu của UITableViewCell:

Nếu bạn muốn có một ô trong bảng có một cấu hình khác nhau mà những xác định bởi UITableViewCell cho phong cách, bạn phải tạo celle tùy chỉnh của riêng bạn

+0

Ông đã không đề cập đến việc muốn một phong cách di động khác nhau mặc dù. Bố cục kiểu ô thay đổi một cách độc đáo nếu bạn đặt trong một tệp cell.imageview.image nhỏ hơn hoặc lớn hơn. Anh ta chỉ cần làm cho hình ảnh của mình nhỏ hơn. –

+0

Vâng, anh ấy nói anh ấy muốn thay đổi khung imageView và điều này không hoạt động trong các ô tiêu chuẩn khi chúng tự bố trí các bản xem trước của chúng. Bạn có quyền mặc dù ô thích nghi với các kích thước hình ảnh khác nhau. – Pascal

17

Cách tốt nhất là để thêm - (void)layoutSubviews vào lớp con của bạn như sau:

- (void)layoutSubviews { 
    [super layoutSubviews]; 
    self.imageView.frame = CGRectMake(0.0f , 0.0f, 32.0f, 32.0f); 
} 
+1

Đây phải là câu trả lời được chấp nhận. –

0

Nếu bạn muốn thay đổi kích thước để hiển thị độ phân giải cao độ tuổi trên màn hình hiển thị võng mạc, bạn cũng có thể lưu hình ảnh thứ hai với độ phân giải gấp đôi và đặt tên là @ 2x postfix.

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