当用户输入文本“search:”时,我试图向searchField添加一个默认Label。我试过这个
editedField.setLabel("search:")
但它不起作用,因为当我把字符串搜索时不要擦除。例如,如果我把“a”显示为搜索。你能帮助我吗?非常感谢。
答案 0 :(得分:3)
基本上,您需要在TextField
中提示。
您需要覆盖其paint
方法,您可以使用此代码:
protected void paint(Graphics graphics) {
if (beditfield.getText().length() == 0)
{
graphics.setColor(Color.GRAY);
graphics.drawText("Search", 0, 0);
}
graphics.setColor(Color.WHITE);
invalidate();
super.paint(graphics);
}
检查文本字段长度。当它为零时,它会在那里绘制提示。
答案 1 :(得分:1)
答案 2 :(得分:1)
试试这个 -
private String test="";
final EditField email_edit = new EditField("", "", 30,BasicEditField.FILTER_DEFAULT) {
String emptyString = "Search";
protected void paint(Graphics g) {
int oldColor = g.getColor();
try {
g.setColor(0x959595);
test = super.getText();
if ( test == null || test.length() < 1 ) {
g.drawText(emptyString, 0, 0);
}
super.paint(g);
} finally {
g.setColor(oldColor);
}
}
};