- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
很奇怪,我一直在到处寻找这个答案,但似乎没有任何效果!
我有一个简单的 UITextView
,我试图根据其内容在 viewController 中调整其大小:
- (void)viewDidLoad
{
[super viewDidLoad];
NSString *lorum = @"Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Nam liber te conscient to factor tum poen legum odioque civiuda.";
self.textView.text = lorum;
self.textView.scrollEnabled = NO;
[self.textView sizeToFit];
[self.textView layoutIfNeeded];
}
但这就是我最后得到的:
我是否漏掉了一些明显的东西?
更新(框架背景):
最佳答案
正如我在评论中所写,在我看来,如果你不想使用 UITextView 的滚动,我建议使用一个简单的 UILabel..这是代码:
编辑:如果您出于某种原因想要使用 UITextView,例如可编辑文本或可选择文本,您可以使用相同的代码并进行一些修改(我在代码中添加了这些修改,例如注释)
EDIT2 如果您的标签在 Storyboard中检查约束或删除自动布局
.h
@interface ViewController : UIViewController {
IBOutlet UILabel *label;
}
.m
- (void)viewDidLoad {
[super viewDidLoad];
// UILabel *label = [[UILabel alloc] init];
label.backgroundColor = [UIColor lightGrayColor];
NSString *lorum = @"Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. Nam liber te conscient to factor tum poen legum odioque civiuda.";
//for use labrect with UITextView you set the font of UITextView:
//label.font = [UIFont systemFontOfSize:17];
CGSize maxSize = CGSizeMake(320, 410);
CGRect labrect = [lorum boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:label.font} context:Nil];
label.text = lorum;
//for use UITextView you should comment the line under
label.numberOfLines = 0;
label.frame = CGRectMake(0, 30, 320, labrect.size.height);
// [self.view addSubview:label];
};
关于ios - UITextView sizeToFit 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20998032/
我正在开发一个主视图填满整个屏幕的应用程序。这个主视图包含您可以认为是 Sprite 的 subview 。他们使用自己的代码四处游荡。他们四处游荡的逻辑可能会让他们游荡在屏幕之外。我想要做的是调整主
我刚刚遇到了奇怪的问题,我有一个具有动态高度的自定义表格 View 单元格。虽然测试这一切似乎工作正常,但现在我将真实内容加载到其中似乎存在一些问题。 某些文本似乎不会触发 UILabel 中的新行
我有一个应用程序,用户可以随意添加我所说的调色板。项目 (UIViews) 可以从一个调色板拖动到另一个调色板。我以为我可以使用 sizeToFit 方法在添加项目或删除项目时自动调整调色板的大小,但
我正在为 Storyboard View 创建这些标签。我将自动布局设置为“关闭”,并将行数设置为 0,但仅当我注释掉 sizeToFit 时才会显示文本。当然,当文本高度大于 40 时,文本就会被截
我的 ASTextNod 通常需要 3 行,但我从第二行截断了它。结果:我的 ASTextNod 显示 2 行和 3 个截断点,但他的高度是 3 行的高度而不是 2。 我正在寻找类似于 ASTextN
我有一个观点: label1 和label2 之间存在布局约束。按下按钮将 TextView 中的文本添加到 label1。在调整标签 1 的大小以适合文本后(调用 sizeToFit)。调整大小后,
我正在尝试以编程方式操作 UILabel 以使其具有动态宽度。 我发现使用 sizeToFit() 确实可以做到这一点。现在这个标签变成了我的 navigationItem.titleView。我希望
每当后端数据库发生变化时,我都会执行一段代码。本质上,我在父 View 中有一个标签。标签由许多状态消息之一更新,每个状态消息都在不同的行上,以新行 (\n) 结尾。每条状态消息只需要在一行上并且不能
我有时会看到类似这样的代码: NSArray *segmentedControl = [NSArray arrayWithObjects:@"First", @"Second", @"Third",
我有一个自定义的 UITableViewCell,在 Storyboard 上有一个 UILabel。我动态设置此 UILabel 的文本,并且需要相应地调整 UILabel 的宽度,因为在它之后我还
我在 NSTextField 上的 sizeToFit 方法上遇到了一个奇怪的问题。 我有一个 NSView,我正在其中创建一个 CALayer 和一个 NSTextField。我使用 sizeToF
是否有任何简单的方法可以帮助我使用内容大小动态更改依赖 View 的位置? 我想在列中显示多个 View ,这些 View 都有不同的内容。我希望它们被一个接一个地放置(我已经使用如下所示的约束创建了
所以我正在使用 iOS 6 制作一个应用程序,并且想知道为什么我的代码曾经在 iOS 5 上运行良好,但现在不再运行了。我有一个带有动态 UILabel 的单元格,它会根据它所携带的文本进行调整。 这
这是我的代码: let button_video = UIButton(type: .custom) button_video.frame = CGRect.zero if subsession.Vi
属性文本设置为 UILabel。 let label = UILabel() label.frame = view.frame label.numberOfLines = 0 do { let
我以编程方式创建标签。它总是有两条线。不过,这两行的字体大小会改变。因此,标签的高度和宽度必须改变。我尝试使用 sizeToFit 来做到这一点。然而,第二个词(“Day”)仅部分显示。这个词的底部被
我想在指定行数后以编程方式创建一个 UILabel。我正在使用 swift 。我有以下代码: let newLabel = UILabel() newLabel.text = "Hello There
我已经配置了一个测试 Playground ,其中包含 UITableView 和 UIStackView 实例作为其 header 。 stackView 包含 10 个 UILabel。 问题是,
任何人都能够突出显示为什么在下面的代码中需要“[aLabel sizeToFit]”行,摘自 here . 也就是说,创建的 CGRect 已经根据文本字体大小调整了大小,那么为什么还需要 sizeT
我正在尝试使用函数 sizeToFit。它在整个应用程序中完美运行,但在下面的代码中不起作用。此外,如果无法按照我的方式完成,请提出建议。 self.label = [[UIL
我是一名优秀的程序员,十分优秀!