0

それで、セルのdetailTextLabelに小さな画像を表示できるかどうか疑問に思いました。(私はURLから画像を取得しています)私はそれを試しました:

NSString *thumbs = [NSString stringWithFormat:@"%@", TableText3];
cell.detailTextLabel.text = thumbs;

明らかな理由でこれは機能しません。私も試しました:

UIImage *thumbs = [UIImage imageWithData:[NSData dataWithContentsOfURL:
                                          [NSURL URLWithString:TableText3]]];
cell.detailTextLabel.text = thumbs;

これも(明らかに)機能しません。これは、画像を文字列パラメーターに渡しているためです。

驚いたことに、WWWには何も見つかりませんでした。(検索パラメータは、「image indetailTextLabel」またはpictureまたは単にtextlabelとimageおよびさまざまなバリエーションでした)

4

3 に答える 3

2

ラベルにはテキストしか表示されないため、ラベルに直接配置することはできません。ただし、UITableViewCellのimageViewプロパティを使用できます。

cell.imageView = [[UIImageView alloc] initWithImage: thumbs];

https://developer.apple.com/library/ios/documentation/uikit/reference/UITableViewCell_Class/Reference/Reference.html

于 2012-03-05T22:21:36.300 に答える
1

画像をimageViewプロパティに配置する代わりに、UIImageViewを作成して、accessoryViewプロパティに配置することができます。

UIImage     * thumbs;
UIImageView * thumbsView;
CGFloat       width;

thumbs             = [UIImage imageWithData:[NSData dataWithContentsOfURL:
                              [NSURL URLWithString:TableText3]]];
thumbsView         = [[[UIImageView alloc] initWithImage:thumbs] autorelease];
width              = (cell.frame.size.height * thumbs.size.width) / thumbs.size.height;
thumbsView.frame   = CGRectMake(0, 0, width, cell.frame.size.height);
cell.accessoryView = thumbsView;

これにより、セル内に収まるように画像のサイズが変更され、textLabelとdetailTextLabelの右側に配置されます。

于 2012-03-05T22:54:45.377 に答える
1

より良いアプローチは、組み込みのUITableViewCellタイプに依存せず、独自のセルフレームを作成し、セル内の目的の位置にすべてのラベル、ビュー、画像を追加することです。次に、テーブルビューのセルを返すことができます。

于 2012-03-05T23:46:06.113 に答える