gpt4 book ai didi

iphone - iOS 7 UITextView 高度调整大小怪癖

转载 作者:搜寻专家 更新时间:2023-10-30 19:47:43 25 4
gpt4 key购买 nike

使用我从 stackoverflow 上找到的多个答案中收集的信息,我已经能够使用以下方法正确调整 UITextView 的 高度:

[bookQuoteTxtView sizeToFit];
[bookQuoteTxtView layoutIfNeeded];

我这样做是因为 UITextView 显然会根据用户在前一屏幕上选择的内容而包含不同数量的文本。

但是,我仍然遇到一个奇怪的问题。
似乎当传递到 UITextView 的文本包含换行符时,它会抛出整个高度。

这是没有任何换行符的文本:

enter image description here

这是相同的文本,中间有几个换行符:

enter image description here

如您所见(借助我添加到包含它的 UITextViewScrollView 的橙色和黄色背景色),UITextView 的 高度没有适本地调整大小,现在文本被截断了——都是因为那些换行符。

我用来在 UITextView 上执行所有这些动态高度更改的代码是:

// BookQuote TextView:
bookQuoteTxtView = [[UITextView alloc] initWithFrame:CGRectMake(5, 30, 310, 80)];
bookQuoteTxtView.backgroundColor = [UIColor orangeColor];
bookQuoteTxtView.font = [UIFont fontWithName:@"Arial" size:15];
bookQuoteTxtView.text = [NSString stringWithFormat:@"%@", bookObject.bookQuote];
[bookQuoteTxtView sizeToFit];
[bookQuoteTxtView layoutIfNeeded];
bookQuoteTxtView.editable = NO;

[scroller addSubview:bookQuoteTxtView];

// Now get the HEIGHT of the Book-Quote TextView:
CGRect textViewFrame = bookQuoteTxtView.frame;
CGFloat textViewFrameHeight = bookQuoteTxtView.contentSize.height;
textViewFrame.size.height = textViewFrameHeight;
bookQuoteTxtView.frame = textViewFrame;

再说一次,对于传递到我的 UITextView 框中的几乎每个字符串,这几乎完美无缺。因此,不同长度的不同字符串都可以工作,UITextView 的 高度会自动调整,一切都很酷。只是换行符会把所有东西都扔掉。

话虽如此……似乎在字符串中使用“\n”生成的换行符确实有效,但嵌入/编码在传入并从 Sqlite3 数据库读取的字符串中的换行符 - 不要。
所以你想知道这是否是问题所在。

这是我用来从数据库中读取日期的代码:

  // Book Quote:
char *bookQuoteChar = (char *)sqlite3_column_text(statement, 4);
NSString *bookQuoteString;
if (bookQuoteChar == NULL) {
bookQuoteString = @"N/A";
}
else {
bookQuoteString = [[NSString alloc] initWithUTF8String:bookQuoteChar];
}

我越来越认为是数据库导致了问题,但我在这里完整地展示了整个图片,以确保我仍在正确地进行高度调整。
如果您有什么问题或有任何修复建议,请告诉我。

最佳答案

除了使用一种技术来设置 UITextView 的 contentSize 之外,我真的没有太多建议。

textView.text    = @"text from DB";
CGRect rect = textView.frame;
rect.size.height = textView.contentSize.height;
textView.frame = rect;

然后使用可能需要的任何技术来额外更新框架。希望你能解决问题!

关于iphone - iOS 7 UITextView 高度调整大小怪癖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19337462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com