objective-c - 请问IOS开发中,这种TextField样式是如何实现的
高洛峰
高洛峰 2017-04-17 17:04:07
[iOS讨论组]
高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(10)
巴扎黑

这个可以使用UI控件来拼装的

效果

PHP中文网

左边的小图标一定要使用镂空图,不然不会透过去。
右边是TextField,用 TextField.placeholder = @"用户名";
设置TextField无边框: TextField.backgroundColor = [UIColor clearColor];
下面的那条线可以建一个UIView: View的高度为0.5,就和一条线一样了。
能看懂吧哈~

黄舟

可以用category,可以...这里说一种继承,步骤如下:
1)继承UITextfield
2)重写子类中的- (void)drawRect:(CGRect)rect 如下

  • (void)drawRect:(CGRect)rect
    {

    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetFillColorWithColor(context, [UIColor blackColor].CGColor);
    CGContextFillRect(context, CGRectMake(0, CGRectGetHeight(self.frame) - 0.5, CGRectGetWidth(self.frame), 0.5));

    }

3)TestCode 如下:

import "CustomField.h"

@implementation ViewController

  • (void)viewDidLoad
    {

    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    CustomField *textField = [CustomField new];
    textField.frame = CGRectMake(0, 200, 100, 30);
    textField.backgroundColor = [UIColor yellowColor];
    [self.view addSubview:textField];

    }

PHP中文网

这个有很多做法,提一个上面没有提到的。左边的可以图片可以通过设置UITextField的leftView这个属性,右边就是设置placeholder实现。

高洛峰

都是大神啊,改几个属性就行了。

怪我咯

可以用不带边框的样式加一个imageView。如果用的多可以自己写一个继承UITextField的类来实现

迷茫

最简单就是做个背景图片,然后输入框设置背景透明放上去

迷茫

也有可能是webview,HTML CSS实现的。

迷茫

「用户名」和「密码」是两个TextField,设置了placeholder属性。
左边是两个icon,下方的白线可以自己画,可以贴图。

这种界面我比较喜欢用 Storyboard 来拖,基本不用写代码。

送lz篇教程:

http://www.raywenderlich.com/55384/ios-7-best-practices-part-1

PHPz

https://github.com/raulriera/TextFieldEffects

看看这个textfield

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号