Возникли проблемы с кнопкой - PullRequest
0 голосов
/ 13 июня 2011

Я сделал всплывающий экран , в котором есть

EditField и два ButtonField .

Теперь я столкнулся с очень странной проблемой, есть две кнопки, одна из которых Cancel, а другая - Send button. Теперь первая кнопка, которую я добавляю, не работает нормально, а вторая кнопка работает нормально. Для простоты в этом коде Cancel button будет работать, а Send button - нет. Что мне здесь не хватает, может кто-нибудь мне поможет.

<code>
ButtonField sendButton,cancelButton;
PinPopup()//Constructor
{
super(new HorizontalFieldManager());
texts=new EditField("","",200,Field.EDITABLE);
    sendButton = new ButtonField("  Send  ");
    sendButton.setChangeListener(this);<br>
    cancelButton = new ButtonField("Cancel");
    cancelButton.setChangeListener(this);
        VerticalFieldManager _fieldManagerContext = new VerticalFieldManager(VerticalFieldManager.USE_ALL_WIDTH | VerticalFieldManager.USE_ALL_HEIGHT)
        {<br>
public void sublayout(int width,int height) {<br>
                                super.sublayout(width, height);
                int xpos = 10; 
                int ypos = 40;
                Field field = getField(0);
                layoutChild(field, 280, 50);
                setPositionChild(field, xpos, ypos);
                Field field1 = getField(1);
                layoutChild(field1, 280, 50);
                setPositionChild(field1, xpos+10, ypos+80);
                Field field2 = getField(2);
                layoutChild(field2, 280, 50);
                setPositionChild(field2, xpos+145, ypos+80);
                setPosition(150, 220);
                setExtent(300, 220); 
}
public void paint(){
Overrided
}
_fieldManagerContext.add(texts);
_fieldManagerContext.add(sendButton);
_fieldManagerContext.add(cancelButton);
public void fieldChanged(Field field, int context)
{</p>

<p>if(field==cancelButton)
{
Dialog.inform("Cancel");<br>
}</p>

<p>if(field){
Dialog.inform("Send");
}<br>
}
UPDATE
<code>
if(field==sendButton){
Dialog.inform("Send");
}
UPDATE Я пробовал это тоже, но та же проблема, ребята, что теперь делать
<code>
cancelButton = new ButtonField("Cancel") {
protected boolean navigationClick(int status, int time) {
return true;
    }
};

Ответы [ 2 ]

0 голосов
/ 16 июня 2011

Проблема, которую я получаю, потому что я добавляю две кнопки подряд, и я использовал VerticalFieldManager для добавления кнопок, поэтому я получил проблему. И для решения я добавил кнопку в HorizontalFeildManager, и теперь она работает нормально

VerticalFieldManager _fieldManagerContext = new VerticalFieldManager(VerticalFieldManager.USE_ALL_WIDTH | VerticalFieldManager.USE_ALL_HEIGHT)

к этому

HorizontalFieldManager _fieldManagerContext = new HorizontalFieldManager(USE_ALL_WIDTH)
0 голосов
/ 13 июня 2011

В вашем FieldChangeListener для отправки вы проверяете if(field) вместо if(field == sendButton)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...