我有一个textfield和textfield文本的首字母始终是美元符号。现在,我需要更改美元符号的颜色,以便美元符号和其余文本应该是以不同的颜色。我怎样才能做到这一点??任何想法如何更改文本字段文本的第一个字母的颜色
2
A
回答
3
不能做到标准。在UITextField中只允许一种样式。
最好的主意:摆脱UITextField中的$,用空白替换它,然后在上面放置一个UILabel。
第二个好主意:子类UITextField。
编辑:
UITextField
有一个drawTextInRect:
方法,它可能是所有你需要重写。 已记录here。如果您需要更多帮助,请尝试使用Google或如何继承不同的UI类,以便搜索,并获得如何重写绘画方法的感觉(如drawRect:
为UIView
)
0
这里是我的LinethruLabel的@implementation的一个子类的UILabel。它表示一个
“划伤”
项目与红色的内衬通过文本。在我的情况下,我打电话[super drawRect:rect];
和UILabel绘制文字和背景等,但我不知道是否你想要,所以如果它不按你想要的方式工作,就把它拿出来。所以我想你需要使用NSString UIKit类别的drawAtPoint:withFont:
方法的一些变体。
@implementation LineThruUILabel
- (void)dealloc {
[super dealloc];
}
- (id)initWithFrame:(CGRect)frame {
if (self = [super initWithFrame:frame]) {
// Initialization code
drawLine = NO;
}
return self;
}
- (void) setDrawLine:(BOOL) newValue
{
if(drawLine != newValue){
drawLine = newValue;
[self setNeedsDisplay];
}
}
- (CGSize) calculateLineWidth
{
NSString *newText = self.text;
CGFloat actualFontSize;
CGFloat width = self.frame.size.width;
CGSize size = [newText sizeWithFont: self.font minFontSize:self.minimumFontSize
actualFontSize:&actualFontSize
forWidth:width
lineBreakMode:self.lineBreakMode ];
return size;
}
- (void)drawRect:(CGRect)rect {
[super drawRect:rect];
CGFloat horizOffset = 0.0;
if(drawLine){
CGSize lineSize = [self calculateLineWidth];
CGFloat offset = 1.0;
// Drawing code
CGContextRef ctx = UIGraphicsGetCurrentContext();
//CGFloat w = rect.size.width;
CGFloat h = rect.size.height;
// just match the color and size of the horizontal line
CGContextSetRGBStrokeColor(ctx, 1.0, 0.0, 0.0, 1.0);
CGContextSetLineWidth(ctx, 2.0);
CGContextMoveToPoint(ctx, horizOffset , h/2 + offset);
CGContextAddLineToPoint(ctx, lineSize.width + horizOffset + 1.0, h/2 + offset);
CGContextStrokePath(ctx);
}
}
相关问题
- 1. 如何更改InfoPath文本字段的文本颜色?
- 2. 更改Javafx文本字段中文本的颜色WHILE打字
- 3. 更改字母第一个字母的字体颜色
- 4. iphone ipad更改文本字段颜色
- 5. JButton更改文本字段的文本颜色
- 6. 更改文本字段的文本颜色
- 7. 离子 - 如何更改文本字段的背景颜色?
- 8. 在Swing文本字段中延迟文本颜色更改
- 9. 更改JLabel的颜色字符文本?
- 10. 如何更改只有第一个元素的文本颜色?
- 11. 如何使用CSS更改文本字段中初始文本的颜色?
- 12. 通过JCheckBox更改文本字段输入的字体颜色
- 13. 悬停时更改一个字母的字体颜色字母
- 14. 如何更改文本块中每个字符的颜色
- 15. 记事本++更改文字颜色?
- 16. 如何更改sectionIndexTitlesForTableView的字母颜色?
- 17. jbutton更改文本字段的文本
- 18. 如何在更改文本字段颜色后获得正常的JavaFX文本字段?
- 19. 使用JavaScript更改输入文本字段的背景颜色
- 20. 使用css更改输入字段的文本颜色
- 21. 更改tableview和文本字段中的选择颜色javafx
- 22. 更改文本字段中值的颜色
- 23. 如何在sencha中动态改变文本字段的颜色?
- 24. 如何更改文本颜色的IFrame
- 25. 如何更改JButton的文本颜色
- 26. 如何更改QxtLabel的文本颜色
- 27. 文本字段的背景颜色:focus
- 28. iOS 8文本字段色调颜色
- 29. 如何更改C#文本框中的字体颜色?
- 30. 如何更改textView文本程序的字体/大小/颜色?
好点肯尼!虽然,我会选择继承:) – prakash 2009-11-18 10:18:16
我subclassed UITextField。在我的drawTextInRect方法中,我添加了一个字符串在文本字段中绘制。但不调用drawTextInRect。 – diana 2009-11-18 10:45:44