how to filter the list written in bracket in blackberry? -


i using link place holder text on autocompletefield in blackberry

i want filter list when user wite on text field .current filter first text of string array .example if write "f" filter "friday" want should filter whatever text written in bracket

example if have select "m" .if show "wednesday-(man)",

 string[] days = {"monday(tas)","tuesday-(paq)","wednesday-(man)",                         "thursday","friday","saturday","sunday(i_)"}; 

customautocompletefield.java

 package mypackage;  import net.rim.device.api.collection.util.basicfilteredlist; import net.rim.device.api.collection.util.basicfilteredlistresult; import net.rim.device.api.system.application; import net.rim.device.api.ui.color; import net.rim.device.api.ui.graphics; import net.rim.device.api.ui.component.autocompletefield; import net.rim.device.api.ui.component.listfield;  class customautocompletefield extends autocompletefield {     private int yoffset = 0;     private int xoffset = 0;      public customautocompletefield(basicfilteredlist filteredlist) {        super(filteredlist);     }      protected void paint(graphics g) {        super.paint(g);        if (xoffset == 0) {           // initialize text offsets once           xoffset = geteditfield().getcontentleft();           yoffset = geteditfield().getcontenttop();        }        string text = geteditfield().gettext();        if (text == null || text.length() == 0) {           int oldcolor = g.getcolor();           g.setcolor(color.gray);           g.drawtext("enter text", xoffset, yoffset);           g.setcolor(oldcolor);        }     }      public void onselect(object selection, int select_trackwheel_click) {        listfield _list = getlistfield();        if (_list.getselectedindex() > -1) {            final string selectedtext = geteditfield().gettext();          if(selectedtext!=null){              final basicfilteredlistresult result = (basicfilteredlistresult) selection;              application.getapplication().invokelater(new runnable() {                   public void run() {                      selectedtext.settext(result._object.tostring());                    }                 });             // selectedtext.settext(result._object.tostring());           }        }     }     protected void sublayout(int maxwidth, int maxheight) {         // todo auto-generated method stub         super.sublayout(250, 250);     }   } 

myscreen.js

public final class myscreen extends mainscreen {     /**      * creates new myscreen object      */     public myscreen()     {                 // set displayed title of screen               basicfilteredlist filterlist = new basicfilteredlist();         string[] days = {"monday(tas)","tuesday-(paq)","wednesday-(man)",                         "thursday","friday","saturday","sunday(i_)"};         filterlist.adddataset(1,days,"days",basicfilteredlist.comparison_ignore_case);          horizontalfieldmanager hr =new horizontalfieldmanager();         labelfield username= new labelfield("hjsdhas");         hr.add(username);         customautocompletefield autocompletefield = new customautocompletefield(filterlist);          hr.add(autocompletefield);         add(hr);      } } 

i try second way .i want filter "not" display text "days"

package mypackage;  import net.rim.device.api.collection.util.basicfilteredlist; import net.rim.device.api.system.bitmap; import net.rim.device.api.ui.color; import net.rim.device.api.ui.graphics; import net.rim.device.api.ui.xyedges; import net.rim.device.api.ui.component.autocompletefield; import net.rim.device.api.ui.component.basiceditfield; import net.rim.device.api.ui.component.labelfield; import net.rim.device.api.ui.component.textfield; import net.rim.device.api.ui.container.horizontalfieldmanager; import net.rim.device.api.ui.container.mainscreen; import net.rim.device.api.ui.decor.background; import net.rim.device.api.ui.decor.backgroundfactory; import net.rim.device.api.ui.decor.border; import net.rim.device.api.ui.decor.borderfactory;  /**  * class extending mainscreen class, provides default standard  * behavior blackberry gui applications.  */ public final class myscreen extends mainscreen {     /**      * creates new myscreen object      */       public static basicfilteredlist filterlist;       private int yoffset = 0;       private int xoffset = 0;     public myscreen()     {                 basicfilteredlist filterlist = new basicfilteredlist();         string[] days = {"monday-(wfc)","tuesday-(afc)","wednesday-(pqr)",                                "thursday-(wfc)","friday-(wfc)","saturday-(wfc)","sunday-(wfc)"};         string[] not = {"wfc","afc","pqr",                    "pqr","wfc","wfc","wfc"};         filterlist.adddataset(1,not,"days",basicfilteredlist.comparison_ignore_case);         horizontalfieldmanager hr=new horizontalfieldmanager();         labelfield l =new labelfield("user name");         autocompletefield autocompletefield = new autocompletefield(filterlist){               protected void paint(graphics g) {                   super.paint(g);                  if (xoffset == 0) {                     // initialize text offsets once                     xoffset = geteditfield().getcontentleft();                     yoffset = geteditfield().getcontenttop();                  }                  string text = geteditfield().gettext();                  if (text == null || text.length() == 0) {                     int oldcolor = g.getcolor();                     g.setcolor(color.gray);                     g.drawtext("enter text", xoffset, yoffset);                     g.setcolor(oldcolor);                  }               }              protected void sublayout(int maxwidth, int maxheight) {                 // todo auto-generated method stub                 super.sublayout(200, 150);             }         };         hr.add(l);          hr.add(autocompletefield);         add(hr);      } } 


Comments

Popular posts from this blog

javascript - how to protect a flash video from refresh? -

android - Associate same looper with different threads -

visual studio 2010 - Connect to informix database windows form application -