android - Conditionally formating a ListView. Function only works from OnListItemClick(), but not from OnCreate()? -
so have nice little list cursoradapter.
after creation, i'm trying color rows depending on kind of values hold. function below. problem:
if call function "list.setonitemclicklistener()...", runs perfectly.
if call oncreate(), nullpointerexeption on "textview tv = (textview) childview.findviewbyid(r.id.row_eszkoz_leltarozott_allapot);" row.
what causes this?
public void conditionalcoloring() { (int position=0; position<adapter.getcount(); position++) { system.out.println("adapter child szám: " + adapter.getcount()); view childview = list.getchildat(position); //view childview = adapter.getview(position, null , list); textview tv = (textview) childview.findviewbyid(r.id.row_eszkoz_leltarozott_allapot); ///error here relativelayout rl = (relativelayout) childview.findviewbyid(r.id.row_eszkoz_container); string s = (string) tv.gettext(); system.out.println("szöveg: " + s); if (s.equals("leltárazva")) { int holoblue = activity.getresources().getcolor(android.r.color.holo_blue_light); rl.getbackground().setcolorfilter(holoblue,porterduff.mode.multiply); } else if (s.equals("leltározandó")) { int hologreen = activity.getresources().getcolor(android.r.color.holo_blue_light); rl.getbackground().setcolorfilter(hologreen,porterduff.mode.multiply); } else if (s.equals("módosítási tranzakció szükséges")) { int holored = activity.getresources().getcolor(android.r.color.holo_blue_light); rl.getbackground().setcolorfilter(holored,porterduff.mode.multiply); } else { } } }
in cursoradapter
override getview()
new simplecursoradapter(getactivity(), r.layout.rowlayout, null (opt cursor), fromcolumns, tolayout, 0) { @override public view getview(int position, view convertview, viewgroup parent) { view row = super.getview(position, convertview, parent); row.findviewbyid(...) ...enter code here... return row; } }
btw, system.out.println()
????
check this: http://developer.android.com/reference/android/util/log.html
Comments
Post a Comment