Редакция:
У меня проблема с настройкой фонового изображения для моего ListView. В графическом виде деятельности он выглядит хорошо, но по телефону нет фона вообще. Это мой код.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="bottom|fill_vertical"
android:background="@drawable/background">
<ListView
android:id="@+id/listPlan"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:divider="@null"
android:cacheColorHint="#00000000"
android:listSelector="@android:color/transparent"
android:scrollingCache="false"
android:dividerHeight="5dp" >
</ListView>
</LinearLayout>
Это одно из действий в GroupActivity, если это что-то значит для моей проблемы. Я пробовал все: предоставление android:background
для ListView
, для LinearLayout
, даже для родительской активности (GroupActivity
), изменение android:layout
значения android:layout
для каждого элемента, который я мог, ничего не помогает.
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/text"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:textSize="20sp"
android:padding="15dp"
android:scrollHorizontally="true" >
</TextView>
Вот как выглядит мой элемент единого списка, возможно, есть ошибки?
Я видел разницу только тогда, когда я редактировал свой <TextView>
и giv it android:background
, каждый другой пытался изменить фон og this listview был незанятым - например, я изменил android:cacheColorHint="#00000000"
на android:cacheColorHint="#FFFFFFFF"
- ничего не произошло.
Я попробую еще раз - после изменения макета с Linear на Relative ничего не произойдет, но это (спасибо @Sam) заставляет меня думать. Может быть, мне нужно добавить что-то в свой AndroidManifest.xml? Если код работает правильно, возможно, этот родительский GroupActivity
оказывает большее влияние на ListView
, тогда я подумал. К сожалению, я не могу поместить изображения, но вы можете увидеть два состояния этого ListView
здесь: https://www.dropbox.com/sh/y5dgibei5uq9kv9/afeIvgW18g
Ничего себе, проблема немного странная, потому что когда я пытался установить android:textColor
для моего ListView
ничего не изменилось! Это мои styles.xml:
<resources>
<!--
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Light">
<!--
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
-->
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
</style>
</resources>
Спасибо за каждого ответа.
ПОСЛЕДНЕЕ ИЗМЕНЕНИЕ!
Хорошо, проблема решена, потому что ничто не помогает мне, я пробовал по-другому и просто установил фон ListView в коде:
if(getResources().getConfiguration().orientation == Configuration.ORIENTATION_PORTRAIT)
list.setBackgroundResource(R.drawable.background);
else list.setBackgroundResource(R.drawable.background_landscape);
Теперь все работает хорошо! Спасибо, ребята, за каждый ответ. Мир.
android:cacheColorHint="#00000000"
Или вы можете использовать Expandable Listview
Отредактировано:
Используйте Relative layout
вместо linear layout
и, пожалуйста, проверьте.. /
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ListView
android:id="@+id/listView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:background="@drawable/ic_launcher"
android:cacheColorHint="#00000000">
</ListView>
</RelativeLayout>
android:background
для RelativeLayout
, но ничего не изменилось. :(
Попробуй это:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ListView
android:id="@+id/contract_diary_list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:fadingEdge="none"
android:divider="@null"
android:scrollingCache="false"
android:listSelector="@android:color/transparent"
>
</ListView>
</LinearLayout>
Это решило мою проблему:
android:cacheColorHint="#0000"
добавьте его в свой список: -
<ListView
android:id="@+id/listPlan"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:cacheColorHint="#0000">
"# 0000" → прозрачный цветовой код