我需要一个包含(标题,图片和详细信息)的视图,详细信息是关于textview。
我需要的是,允许滚动到所有视图,而不仅仅是texview。 在我的应用程序中,如果我禁用滚动,则会剪切textview,因为高度不是动态的:
在我的代码中,我这样说:
CGRect frame = self.detailTextView.frame;
frame.size.height = self.detailTextView.contentSize.height;
self.detailTextView.frame = frame;
[self.detailTextView sizeToFit];
self.detailTextView.text = [[fastResults objectAtIndex:0] objectForKey:@"content"];
fastResults是一个包含数据的字典。
我需要像bbc application这样的视图:
所以,我需要让textview高度是动态的,并让所有视图可以一起滚动。 注意:所有这些元素都在滚动视图中。
这是我的界面构建器:
感谢您的帮助;
答案 0 :(得分:0)
首先,您需要在调整文本视图大小之前在文本视图上设置文本。所以你应该有类似的东西:
self.detailTextView.text = [[fastResults objectAtIndex:0] objectForKey:@"content"];
CGRect frame = self.detailTextView.frame;
frame.size.height = self.detailTextView.contentSize.height;
self.detailTextView.frame = frame;
// [self.detailTextView sizeToFit]; you don't need this anymore
//after you resized the self.details.textView you have to change the scrollview content size
yourScrollView.contentSize = CGSizeMake(yourScrollView.contentSize.width,
yourImageHeight + yourTitleHeight + self.detailsTextView.frame.size.height);
答案 1 :(得分:0)
您可以首先获得要放在textview(see this)中的NSString的高度,然后将textview的高度设置为字符串的计算高度。
也许,如果textview的高度大于scrollview contentSize的高度,你还必须调整scrollview的contentSize的高度作为textview框架的高度。然后禁用textview上的滚动。