如何以编程方式初始化UITextView?

时间:2010-08-06 15:27:13

标签: iphone delegates uitextview frame

如何初始化一个漂亮而漂亮的UITextView。我有这条线:

textView = [[UITextView alloc] initWithFrame:CGRectMake(150, 150, 100, 100)];

但我想让它看起来不错,我不知道这样做的功能或语法。我希望它有文字包装,我希望角落圆润。另外,如果用户按下键盘上的“返回”,我该怎么做才能使键盘消失。而且我想说“完成”而不是“返回”

3 个答案:

答案 0 :(得分:0)

查看从UITextView文档链接的UItextInputTraits协议。 所有这些属性都可以在那里找到,还有其他属性。

EX:

textView.returnKeyType = UIReturnKeyTypeDone;

答案 1 :(得分:0)

您应该查看文档。这就是全部。具体做法是:

  • 您无法设置边框,您只能为UITextField
  • 执行此操作
  • 你需要设置你的委托并实现-textViewDidChange:来检查退货
  • 您可以将textView.returnKeyType设置为UIReturnKeyDone以获取完成按钮。

你可能想考虑使用UITextField,因为该对象的委托有一个非常方便的-textFieldShouldReturn:方法,你可以像我说的那样设置它的边界。

答案 2 :(得分:0)

  • 要使边框看起来接近UITextField,可以添加以下行。

    [textView.layer setBorderColor:[[[UIColor grayColor] colorWithAlphaComponent:0.5] CGColor]];
    [textView.layer setBorderWidth:1.0];
    textView.layer.cornerRadius = 3;
    textView.clipsToBounds = YES;
    
  • 要通过按“完成”(“返回”)按钮释放键盘,您可以覆盖以下协议(UITextViewDelegate)方法。

    - (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text
    {
         if ([text isEqualToString:@"\n"]) {
            [textView resignFirstResponder];
            return NO;
         }
         return YES;
    }