用xib生成的UITextField文字默认是水平左对齐,垂直居中对齐的,但是用代码生成的UITextField确是默认是水平左对齐,垂直顶对齐。到UITextField的头文件看了一下,发现只有设置水平对齐的属性,却没有垂直对齐属性。因为xib里都可以设垂直对齐属性,所以应有的,于是再到其父类中找,终于在UIControl.h中找到了,下面两个属性就是分别控制水平与垂直方向对齐的。
-
@property(nonatomic) UIControlContentVerticalAlignment contentVerticalAlignment;
水平
-
@property(nonatomic) UIControlContentHorizontalAlignment contentHorizontalAlignment;
-
field.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
就搞定了需要。
转自 http://blog.csdn.net/favormm/article/details/7389943 文章,感谢原作者分享!
UIButton* btn = [[UIButton alloc]initWithFrame:CGRectMake(x,y,length,weigth)];
//定义一个按钮,并且初始化 按钮矩形大小
btn.tag = 100;//设置该按钮的标签是100
(如何使用呢?
在该视图中:其他作用域中...
textField.textAlignment = UITextAlignmentLeft; //水平左对齐
textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; //垂直
居中
运行效果如下:
<br />最右侧加图片是以下代码,<br />
UIImageView *imgv=[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"right.png"]];<br />
text.rightView=imgv;<br />
text.rightViewMode =
UITextField
ViewModeAlways; <br />
如果是在最左侧加图片就换成:<br />
text.leftView
// Created by 思 彭 on 2017/10/12.
#import "MyTextField.h"
@implementation MyTex...
1、左边显示图片
2、textField中添加默认的占位符(提示
文字
),并且希望占位符和左边图片有一点的距离,或者让占位符
居中
,
3、点击textField
输入
时光标的位置应该紧在占位符左侧,并紧挨着占位符
最终实现效果如下图所示:
4.如何更好地限制一个
UITextField
的
输入
长度
开始是计算
UITextField
的位置和高度,让
UITextField
高度和
文字
一样高。
这样的话如果
文字
太小。
UITextField
区域比较小,很难点击到。
可以让
UITextField
大一点,
文字
居中
。设置
文字
居中
。
textFiled.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter;
@property(nonatomic) UIControlContentVerticalAlignment contentVerticalAlignment;
// how to position content vertically inside control. default is center
@property(nonatomic) UICont...
NSMutableParagraphStyle *paragraphStyle = NSMutableParagraphStyle.new;
paragraphStyle.alignment = NSTextAlignmentCenter;
self.textField.attributedPlace
用xib生成的
UITextField
文字
默认是水平左对齐,垂直
居中
对齐的,但是用代码生成的
UITextField
确是默认是水平左对齐,垂直顶对齐。到
UITextField
的头文件看了一下,发现只有设置水平对齐的属性,却没有垂直对齐属性。因为xib里都可以设垂直对齐属性,所以应有的,于是再到其父类中找,终于在UIControl.h中找到了,下面两个属性就是分别控制水平与垂直方向对齐的。
UITextField
通过代码创建的默认对齐
方式
是向左向上对齐,但我们一般想要的对齐
方式
是垂直
居中
对齐。在
UITextField
中并没有能控制对齐
方式
的属性它用的是继承自UIControl的属性来控制对齐
方式
。
@property(nonatomic) UIControlContentVerticalAlignment contentVerticalAlignment; ...
textField.textAlignment = UITextAlignmentLeft; //水平左对齐
textField.contentVerticalAlignment = UIControlContentVerticalAlignmentCenter; //垂直
居中
运行效果如下:
一,
UITextField
文字
垂直
居中
searchText.contentHorizontalAlignment=UIControlContentHorizontalAlignmentCenter;
二,placeholder偏上的问题
[searchText setValue:[UIColor
whiteColor] forKeyPath:@"_placeholderLab
用xib生成的
UITextField
文字
默认是水平左对齐,垂直
居中
对齐的,但是用代码生成的
UITextField
确是默认是水平左对齐,垂直顶对齐。到
UITextField
的头文件看了一下,发现只有设置水平对齐的属性,却没有垂直对齐属性。因为xib里都可以设垂直对齐属性,所以应有的,于是再到其父类中找,终于在UIControl.h中找到了,下面两个属性就是分别控制水平与垂直方向对齐的。
@prop