0

我想创建一个UITextField像 image1 中所示的自定义,但我只能创建像 image2 中的框。任何人都可以帮助如何执行这些UITextField

1)在一些空格后设置文本的开始(参见图1)

2)将角设置为圆角矩形(见图1)

图片1 图片2

4

4 回答 4

1

看看这两种方法:

#import <QuartzCore/QuartzCore.h> //For accessing and modifying layer property of view

//Rounded corners
[textView.layer setCornerRadius:3.0];

//Putting left margin to the textview (set your desired margins)
[textView setContentInset:UIEdgeInsetsMake(<#CGFloat top#>, <#CGFloat left#>, <#CGFloat bottom#>, <#CGFloat right#>)];
于 2013-02-04T09:07:24.573 回答
0

将 Quartzcore 框架添加到您的项目中

导入 QuartzCore/QuartzCore.h

并使用 [YourtextView.layer setCornerRadius:2.0];

希望这对你有帮助

于 2013-02-04T09:14:56.263 回答
0

不要使用 UITextview,而是使用 UITextField。

然后可以将 UITextBorderStyle 设置为 UITextBorderStyleNone,使用圆角矩形图像作为背景。

随时向我发送反馈

于 2013-02-04T09:16:03.210 回答
0

首先添加#import <QuartzCore/QuartzCore.h>

UITextField *YourTextViewName = [[UITextField alloc] initWithFrame:CGRectMake(@"YourSize")];
YourTextViewName.delegate = self;
YourTextViewName.tag = 1;
[self.view addSubview:YourTextViewName];
YourTextViewName.backgroundColor = [UIColor whiteColor];

[[YourTextViewName layer] setBorderColor:[[UIColor lightGrayColor] CGColor]];
[[YourTextViewName layer] setBorderWidth:1.0];
[[YourTextViewName layer] setCornerRadius:10];

另一种选择是:

在 UIImageView 上添加 UITextField ...将 imageView 作为 roundRect 并将 UITextField 放在 imageView 上,UIImageView 的大小很大(不多)然后是 uitextField 并给 uitextfield 背景颜色clearColor...比如

UIImageView *imgTxtTag = [[UIImageView alloc] initWithFrame:CGRectMake(25, 150, 265, 30)] ;
    [imgTxtTag setImage: [UIImage imageNamed:@"SurfaceBtnBG.png"]];
    [self.scrollView addSubview:imgTxtTag];

UITextField *YourTextViewName = [[UITextField alloc] initWithFrame:CGRectMake(@"33, 150, 249, 30")];
    YourTextViewName.delegate = self;
YourTextViewName.backgroundColor = [UIColor clearColor];
    YourTextViewName.tag = 1;
    [self.view addSubview:YourTextViewName];
于 2013-02-04T09:18:07.417 回答