User interface Blackberry-带大文本的单行基本字段
我使用位图创建了一个带有边框的自定义BasicEditField。现在,在键入文本时,它会穿过User interface Blackberry-带大文本的单行基本字段,user-interface,blackberry,custom-controls,User Interface,Blackberry,Custom Controls,我使用位图创建了一个带有边框的自定义BasicEditField。现在,在键入文本时,它会穿过BasicEditField的边框 这是我的密码 class customEditField1 extends EditField { Bitmap mBorder = null; customEditField1(Bitmap borderBitmap) { mBorder = borderBitmap; } protected vo
BasicEditField
的边框
这是我的密码
class customEditField1 extends EditField
{
Bitmap mBorder = null;
customEditField1(Bitmap borderBitmap)
{
mBorder = borderBitmap;
}
protected void paint(Graphics graphics)
{
graphics.drawBitmap(0, 0, mBorder.getWidth(),mBorder.getHeight(), mBorder, 0, 0);
super.paint(graphics);
}
}
我想创建一个BasicEditField,它应该隐藏以前输入的文本并显示新输入的文本,键入的文本应该在边框中。它不应该取决于字符数限制。我想在文本和边框之间应用填充 您可以将BasicEditField放入HorizontalFieldManager。
不要忘记将边界位图绘制从BasicEditField移动到HorizontalFieldManager
class ScrollEdit extends HorizontalFieldManager {
Bitmap mBorder = null;
public BasicEditField mEdit = null;
public ScrollEdit(Bitmap border) {
super(HORIZONTAL_SCROLL | NO_HORIZONTAL_SCROLLBAR);
mBorder = border;
mEdit = new EditField(BasicEditField.NO_NEWLINE);
add(mEdit);
}
protected void paint(Graphics graphics) {
graphics.drawBitmap(0, 0, mBorder.getWidth(), mBorder.getHeight(),
mBorder, 0, 0);
super.paint(graphics);
}
}
但是,您必须使用layout和setExtent来管理大小并正确编辑。我的建议是先不带边框的试试
看
谈到换行,请在管理器中将填充设置为BasicEditField或在边框位图中添加空白…您可以将BasicEditField放入HorizontalFieldManager。
不要忘记将边界位图绘制从BasicEditField移动到HorizontalFieldManager
class ScrollEdit extends HorizontalFieldManager {
Bitmap mBorder = null;
public BasicEditField mEdit = null;
public ScrollEdit(Bitmap border) {
super(HORIZONTAL_SCROLL | NO_HORIZONTAL_SCROLLBAR);
mBorder = border;
mEdit = new EditField(BasicEditField.NO_NEWLINE);
add(mEdit);
}
protected void paint(Graphics graphics) {
graphics.drawBitmap(0, 0, mBorder.getWidth(), mBorder.getHeight(),
mBorder, 0, 0);
super.paint(graphics);
}
}
但是,您必须使用layout和setExtent来管理大小并正确编辑。我的建议是先不带边框的试试
看
谈到换行,请在manager中将填充设置为BasicEditField或在border bitmap中添加空白…我不知道如何将border bitmap从BasicEditField移动到HorizontalFieldManager?请查看提供的代码,它已经存在于paint()中,我刚刚淹没了你的注意力。@MaxGontar我们如何设置背景图像或EditTextField?@Coder如果我们不能设置,我们必须自己绘制。我不知道如何将边界位图从BasicEditField移动到HorizontalFieldManager?请看提供的代码,它已经存在于paint()中,我刚才把你的注意力淹没了。@MaxGontar我们如何设置背景图像或EditTextField?@Coder afaik我们不能设置它,我们必须自己绘制它。