मैं अपने स्विमिंग प्रदर्शन डेटाबेस से पुनर्प्राप्त करता हूं। मैं अपने मूल्य के अनुसार एक फ़ील्ड के पृष्ठभूमि रंग को बदलना चाहता हूं। उदाहरण के लिए यदि मैं 4 गोद तैरता हूं तो मुझे रंग पृष्ठभूमि चाहिए। मैं इस कोड को आज़माता हूं जो पृष्ठभूमि को सही ढंग से सेट करता है लेकिन टेक्स्ट गायब हो जाता है।एंड्रॉइड - SimpleCursorAdapter.ViewBinder - पृष्ठभूमि रंग सेट करें
String[] columns = new String[] { "swimm_pos", "swimm_date","swimm_lap", "swimm_stroke", "swimm_time", "swimm_media", "swimm_efficiency", "swimm_note" };
int[] to = new int[] { R.id.row_counter, R.id.swimm_date, R.id.swimm_lap, R.id.swimm_stroke, R.id.swimm_time, R.id.swimm_medialap, R.id.swimm_efficiency, R.id.swimm_note};
SimpleCursorAdapter adapter = new SimpleCursorAdapter(
this,
R.layout.contacto_list_item,
cursor,
columns,
to);
adapter.setViewBinder(new SimpleCursorAdapter.ViewBinder() {
public boolean setViewValue(View view, Cursor cursor, int columnIndex) {
if (view.getId() == R.id.swimm_lap)
{
int color = cursor.getInt(columnIndex);
String s = String.valueOf(color);
if (s.equals("4")) {
TextView tv = (TextView)view;
tv.setBackgroundColor(0xFF558866);}
return true;
}
return false;}
});
और जब गोद मेरी कोड में उदाहरण के लिए, एक और क्षेत्र के 4 सेट पृष्ठभूमि रंग के बराबर है भी संभव है,: R.id.swimm_pos? धन्यवाद।
धन्यवाद, बिल्कुल सही। और दूसरे प्रश्न के लिए कुछ जोड़ने के लिए संभव है: TextView tv = (TextView) findViewById (R.modificacontatto.edswimm_pos); – lucignolo
मैंने जवाब संपादित किया, मुझे लगता है कि अगर आप रंग बदल रहे हैं, तो आप पाठ को सेट करने के बजाय झूठी वापसी कर सकते हैं, लेकिन यदि यह काम नहीं करता है, तो आपको पाठ को भी सेट करना होगा – nandeesh