2011-08-22 17 views
10

Ho definito un suggerimento in UIBinder e ho bisogno di impostare dinamicamente il suo SuggestOracle. Tutti gli esempi che ho visto mostrano che è possibile definire il suggestionacolo solo al momento dell'istanziazione, ma è necessario definirlo dopo il fatto. C'è un modo per fare questo?GWT Suggestbox definisce suggerisci oracle dopo l'istanza

Grazie!

+1

trovato la risposta - Creare il suggestbox me stesso nel costruttore passando un suggestoracle vuoto, quindi manipolare il suggestoracle DOPO dinamicamente: pubblico MultiWordSuggestOracle oracleSuggestions = new MultiWordSuggestOracle(); \t public ucMyControl() { \t txtName = new SuggestBox (oracleSuggestions); \t initWidget (uiBinder.createAndBindUi (this)); } quindi più tardi potrei chiamare questo codice: oracleSuggestions.clear(); per (int i = 0; i Rob

+4

Inserire la risposta in una risposta, invece di un commento, per favore. –

+1

Ho trovato che il modo in cui l'interrogante ha dichiarato non è abbastanza. È necessaria un'altra riga di codice. Puoi trovare l'intera risposta in http://blog.jeffdouglas.com/2010/02/11/uibinder-with-suggestbox-multiwordsuggestoracle/ –

risposta

7

Utilizzare il metodo getSuggestOracle a SuggestBox per ottenere l'oracolo. Per impostazione predefinita, è del tipo MultiWordSuggestOracle. Quindi, è sufficiente aggiungere le parole che volete:

MultiWordSuggestOracle orcl = (MultiWordSuggestOracle) suggestBox.getSuggestOracle(); 
orcl.addAll(words);