如何避免在uitextfield旁边的点
答
有一个属性lineBreakMode定义时要显示的文本的行为比控制箱
//UILineBreakMode
//Options for wrapping and truncating text.
typedef enum {
UILineBreakModeWordWrap = 0,
UILineBreakModeCharacterWrap,
UILineBreakModeClip,
UILineBreakModeHeadTruncation,
UILineBreakModeTailTruncation,
UILineBreakModeMiddleTruncation,
} UILineBreakMode;
如果你不希望任何点你可以使用UILineBreakModeClip简单地削减较大文末关闭。苹果文件这样说:
到达绘图矩形的末端时剪贴文本。此选项可能会导致字符串末尾出现部分呈现的字符。 适用于iPhone OS 2.0及更高版本。
虽然它当然取决于你想如何显示文本。由于无论哪种方式都无法显示所有文字,点通常比原始分页更加美观。
如果你需要绝对的所有文本是可见的,你必须要么扩大该领域的宽度,或高度(和使用UILineBreakModeCharacterWrap),或者可能减小字体大小(作为最后采取)。
关于这个问题的快速谷歌搜索拉本How to make UILabel/UITableViewCell to have a dynamic height
答
如果你把键盘可见调用下面的代码
有可能[self.yourTextField becomeFirstResponder]
然后较大的文本从左侧剪切。
,你也可以隐藏键盘[如果你使用任何自定义键盘]使用下面的代码
// Hide keyboard for Dial Pad, but show blinking cursor
UIView *dummyKeyboardView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 1, 1)];
yourTextField.inputView = dummyKeyboardView;
[dummyKeyboardView release];
答
我试过很多方法,最后我来到了以下解决方案。
UITextField
没有lineBreakMode
属性,因此只重写以下方法UITextField
:
-(CGRect)textRectForBounds:(CGRect)bounds{
CGRect rect = bounds;
rect.size.width = rect.size.width;
return rect;
}
注:我不知道如何,但它的作品。
问题询问UITextField - 没有setLineBreakMode用于UITextField – 2012-02-01 16:08:50
就像Ben说的,这对UITextField没用。 – Legoless 2013-11-20 11:48:41