UIImage
, UITableView
, UITableViewCell (?) Hücresine nasıl sığar? Görüntüyü UITableView hücresine sığdırmak için nasıl yeniden boyutlandırılır?
addSubview
cell
için yapın veya
cell.image
atanmadan önce
cell.image
veya
UIImage
yeniden boyutlandırmak için bir yol var?
Hücre boyutunu varsayılan olarak tutmak istiyorum (sıfır dikdörtgen ile başladığınızda ne olursa olsun) ve her girişe resim gibi simge eklemek istiyorum. Görüntüler hücre boyutundan biraz daha büyüktür (tablo satırı boyutu).
Ben kodu (kafamın üstünden) şöyle düşünüyorum:
Hücre boyutuna sığacak şekilde görüntüyü yeniden boyutlandırmak için yapmanız gereken ne yapıyoruzUIImage * image = [[UIImage alloc] imageWithName:@"bart.jpg"];
cell = ... dequeue cell in UITableView data source (UITableViewController ...)
cell.text = @"bart";
cell.image = image;
? Ben böyle bir şey gördüm:
UIImageView * iview = [[UIImageView alloc] initWithImage:image];
iview.frame = CGRectMake(...); // or something similar
[cell.contentView addSubview:iview]
yukarıda Hücre görüntü katacak ve Ben ancak, uygun boyut hesaplayabilirsiniz:
- emin değilim daha iyi olup olmadığını yolu,
UIImageView
içincell.image
yeniden boyutlandırmak için fazla yük değil mi?
Örnek:
cell.text
) o görüntü tarafından gizlenmiş olarak, Ben sadece etiket olarak metin eklemek bir çözüm gördüm taşındı olması gerekir UILabel * text = [[UILable alloc] init];
text.text = @"bart";
[cell.contentView addSubview:iview];
[cell.contentView addSubview:label];
// not sure if this will position the text next to the label
// edited original example had [cell addSubview:label], maybe that's the problem
Birisi bana doğru yönde işaret edebilir mi?
DÜZENLEME: Doh [cell.contentview addSubview:view]
belki buna bakmak gerekiyor değil [cell addSubview:view]
:
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
UITableViewCell *cell = ...;
CGRect frame = cell.contentView.bounds;
UILabel *myLabel = [[UILabel alloc] initWithFrame:frame];
myLabel.text = ...;
[cell.contentView addSubview:myLabel];
[myLabel release];
}
Başka öneri yok mu? – stefanB