0

カスタムストーリーボードTableViewContollerクラスを持つストーリーボードTableViewがあります。TableView のヘッダーにアイコンを追加したいのですが、どうすればよいかわかりません。ストーリーボードの TableViewController にヘッダーが表示されず、UIImageView をプロトタイプ セルの上部にドラッグするだけというスタックの投稿に出くわしましたが、これは正しく機能していないようです。

コードの結果

次に、ストーリーボードの UIImageView に接続された IBOutlet を取得し、TableViewController カスタム クラスの viewDidLoad からそのプロパティを設定します。

@property (weak, nonatomic) IBOutlet UIImageView *mImagePic;
...
- (void)viewDidLoad
{
    UIImage *pic = _mPersonPhoto;
    [_mImagePic setImage:pic];
...
}

この種の作品ですが、画像が最初のテーブルビュー行に表示され、リストをスクロールするときにヘッダーの下に消えないように、ヘッダーに入れたいと思います。それで、私はこれを試しました:

- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
   UIImage *pic = _personPhoto;
   [_mImagePic setImage:pic];
   return (_mImagePic);
}

2 番目のコード スニップは最初のものとほぼ同じことを行いますが、画像はまだヘッダーに含まれていません (上のスクリーンショット)。1列目高くしてますが、そのくらいです。次の試みは、コードからヘッダー全体を作成することだと思いますが、viewForHeaderInSectionそれではストーリーボードが無意味になるようです。ヘッダー全体を再構築せずにヘッダーに画像を表示するにはどうすればよいですか ([戻る] ボタン、タイトルなどを追加する)。

4

2 に答える 2

0

ストーリーボードの一番上のバーに UIView と UIImage を追加することになりました。最初にビューに配置せずにそこに画像を追加することはできません。これは私がやろうとしていたことです。

ツリー表示絵コンテ

次に、view と pic を .m ファイルのプロパティに結び付けました。

@interface ...
@property (weak, nonatomic) IBOutlet UIImageView *mImagePic;
@property (weak, nonatomic) IBOutlet UIView *mPicView;
@end

最後に、viewDidLoad で、必要な画像を mImagePic にロードしました。

- (void)viewDidLoad
   {

       UIImage *pic = [picArray objectAtIndex:2];
       [_mImagePic setImage:pic];

       // make transparent View background
       // ! requires unchecking Opaque property in storyboard
       [_mPicView setBackgroundColor:[UIColor clearColor]];
       ...
    }
于 2013-10-03T17:17:36.857 に答える