如何将整个背景页设为白色? 我有一个listview,并尝试在xml中设置backgroundcolor白色但是 它没用。 这些是我的xmls:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ListView
android:id="@+id/list" android:layout_width="fill_parent"
android:clickable="true" android:layout_height="fill_parent"></ListView>
唯一真正变白的是:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/naam" android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:padding="10dp"
android:textSize="16sp" >
</TextView>
这是我的java代码:
public class Contactenlijst extends ListActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final HashMap<Integer, Personeel> personeelmap = new HashMap<Integer, Personeel>();
ArrayList<String> list = new ArrayList<String>();
// Get the data (see above)
JSONObject json = Database
.getJSONfromURL("http://fabian.nostradamus.nu/Android/getcontactinfo.php");
try {
JSONArray contactinfo = json.getJSONArray("contactlijst");
// Loop the Array
for (int i = 0; i < contactinfo.length(); i++) {
JSONObject e = contactinfo.getJSONObject(i);
Personeel p = new Personeel(
Integer.parseInt(e.getString("id")),
e.getString("staff_name"),
e.getString("staff_lastname"),
e.getString("staff_dateofbirth"),
e.getString("staff_address"),
e.getString("staff_address_postal"),
e.getString("staff_address_city"),
e.getString("staff_mobile"));
personeelmap.put(Integer.parseInt(e.getString("id")), p);
list.add(p.toString());
}
} catch (JSONException e) {
Log.e("log_tag", "Error parsing data " + e.toString());
}
setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, list));
ListView lv = getListView();
lv.setTextFilterEnabled(true);
// onclick stuur array naar contactinfo
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
String text = ((TextView) view).getText().toString();
Intent i = new Intent(Contactenlijst.this, Contactinfo.class);
String uittekst[] = text.split(" ");
String vnaam = uittekst[0].toString();
ArrayList<String> al = new ArrayList<String>();
int a = personeelmap.size();
a = a + 1;
for (int c = 1; c < a; c++) {
if (personeelmap.get(c).getStaff_name().toString()
.equals(vnaam)) {
al.add(personeelmap.get(c).getStaff_name());
al.add(personeelmap.get(c).getStaff_lastname());
al.add(personeelmap.get(c).getDateofbirth());
al.add(personeelmap.get(c).getStaff_address());
al.add(personeelmap.get(c).getStaff_address_postal());
al.add(personeelmap.get(c).getStaff_address_city());
al.add(personeelmap.get(c).getStaff_mobile());
}
;
}
i.putStringArrayListExtra("array", al);
startActivity(i);
}
});
}
}
答案 0 :(得分:14)
有一种非常简单的方法可以做到这一点。
首先,在您的活动中创建一个ListView变量(onCreate上面):
ListView LV = null;
然后在onCreate中设置变量,你可以这样做,假设你扩展了ListActivity:
LV = getListView();
或者这适用于假设mylist id在XML中设置为listview:
LV = (ListView) findViewById(R.id.mylist);
最后,将背景设置为颜色:
LV.setBackgroundColor(Color.WHITE);
或将其设置为drawable:
int r = getResources().getIdentifier("subtle_white_gradient", "drawable", "com.my.package");
LV.setBackgroundResource(r);
答案 1 :(得分:5)
如果你想在索引'0'设置背景颜色,你应该尝试这个它工作得很好我使用了这个代码。
list.post(new Runnable() {
@Override
public void run() {
list.setSelected(true);
list.setBackgroundColor(Color.BLACK);
list.getChildAt(0).setBackgroundColor(Color.BLUE);
}
});
答案 2 :(得分:3)
您需要在项目的color.xml
文件夹中创建 res/value
文件。 color.xml 是
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="orange">#ff5500</color>
<color name="white">#ffffff</color>
<color name="transparent">#00000000</color>
<color name="black">#000000</color>
<color name="gray">#999999</color>
<color name="blue">#0066cc</color>
</resources>
现在在 Lisiview
中调用此颜色<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/blue"/>
答案 3 :(得分:1)
最简单的方法是set a theme。在manifest.xml文件中,只需将以下属性添加到您的活动中:
android:theme="@android:style/Theme.Light"
答案 4 :(得分:-1)
在XML中尝试:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView android:id="@+id/list"
android:layout_width="fill_parent"
android:clickable="true"
android:layout_height="fill_parent"
android:background="@color/background" >
</ListView>
创建一个名为colors.xml
的XML文件,用于定义所需的颜色:
<color name="background">#CDB38B </string>