DetailViewストーリーボードにオブジェクトを動的に配置する方法を理解するのに苦労しています。
手始めに、アプリは従来のブログ形式に従います。この形式では、MasterViewは複数の投稿を持つUITableView(またはUICollectionView)です。
ユーザーがそれらの1つをタップすると、セグエがDetailViewにつながります。
DetailViewでの要素の配置を除いて、すべてが正しくロードされます。
これはそれがどのように見えるかです:
上部UIImageView
は高さが固定されているため、と重ならないようになっていPost Text Label
ます。
ただし、Post Text Label
一部の投稿テキストは他のテキストよりも長いため、高さは可変です。これは、動的にサイズを変更する(resizeToFit
)を使用しているカテゴリによって処理されます。これはすべてうまくいきます。
問題は、垂直方向に大きくなるにつれて、(緑色の長方形)が垂直方向のサイズに基づいて下に移動するPost Text Label
必要があることです。そして、私はそれを下に動かすことができません。View - Byline
Post Text Label
View - Byline
すべてのオブジェクトをビュー内に配置したことがわかりますView - Byline
。プログラムで位置を変更するためだけにターゲットを設定することで、オブジェクトが一緒に移動します。
これを達成するために私が使用できる方法を知っていますか?ポインタ、チュートリアル、または知恵は大歓迎です。
DetailViewController.h
#import <UIKit/UIKit.h>
@interface DetailViewController : UIViewController {
IBOutlet UIImageView *postThumbView;
IBOutlet UILabel *postTextLabel;
IBOutlet UIImageView *postAuthorPictureView;
IBOutlet UILabel *postAuthorNameLabel;
IBOutlet UILabel *postTimestampLabel;
IBOutlet UIScrollView *scroller;
IBOutlet UIView *postBylineView;
}
@property (strong, nonatomic) id detailItem;
@end
DetailViewController.m
...
[postThumbView setImageWithURL:[NSURL URLWithString:postThumbUrl] placeholderImage:[UIImage imageNamed:@"default"]];
[postAuthorPictureView setImageWithURL:[NSURL URLWithString:authorPicture] placeholderImage:[UIImage imageNamed:@"default"]];
postTextLabel.text = postText;
postTextLabel.frame = CGRectMake(postTextLabel.frame.origin.x,
postThumbView.frame.origin.y + postThumbView.frame.size.height,
postTextLabel.frame.size.width,
postTextLabel.frame.size.height);
[postTextLabel resizeToFit];
postAuthorNameLabel.text = postAuthorName;
postTimestampLabel.text = postTimestamp;