众所周知,当文本长度大于文本字段长度时,UITextField将在右边缘保持间隙。可能是10像素或一些。 LTR, right gap, may be 10
然而,当输入模式是阿拉伯语(从右到左)时,间隙出现在左边缘,并且它大于10.有人知道为什么吗? RTL, left gap, larger than 10
我想调整差距,无论输入模式是英语还是阿拉伯语。首先,我应该清除差距,然后覆盖editingRectForBounds:或textRectForBounds :,那么我该如何清除差距呢?
答案 0 :(得分:0)
您可以设置textField的leftView
和rightView
。像,
UIView *paddingView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 10, 40)];
standardTextField.leftView = paddingView;
standardTextField.leftViewMode = UITextFieldViewModeAlways;
standardTextField.rightView = paddingView;
standardTextField.rightViewMode = UITextFieldViewModeAlways;
40是standardTextField
的高度。这将在文本字段的两侧设置大小(10,40)的填充。
答案 1 :(得分:0)
您可以UIView
并将textField
添加到该视图中。设置textField
边框为无。
textField.borderStyle = UITextBorderStyleNone;
根据您的要求调整texField
大小。例如,
textField
,则UIView
textField
并设置原点x远,比如5像素。并调整宽度。