GetView вызывается только при прокрутке на уровне 8 андроида.

У меня есть моя деятельность. Он отлично работает на Android 4.2, но когда я запускаю его на 2.3 (как в эмуляторе, так и в реальном устройстве), тогда я вижу белый экран (только внизу я вижу некоторые пиксели «следующего» элемента), и все это появляется, когда я Начните прокрутку.

Введите описание изображения здесьВведите описание изображения здесь

список:

<?xml version="1.0" encoding="utf-8"?> <ListView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/category_browser" android:layout_width="match_parent" android:layout_height="wrap_content" android:clipChildren="false" android:dividerHeight="1dp" tools:listitem="@layout/category_browser_list_item" > </ListView> 

предметы:

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/category_browser_list_item" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_gravity="fill" android:background="#ffffff" android:clickable="true" android:gravity="fill" android:orientation="horizontal" > <ImageView android:id="@+id/category_browser_list_icon" android:layout_width="90dp" android:layout_height="90dp" android:layout_gravity="fill" android:layout_weight="0" android:background="#ffffff" android:contentDescription="@+id/category_browser_list_item_description" android:src="@drawable/icon" /> <TextView android:id="@+id/category_browser_list_title" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_vertical|start" android:paddingLeft="10dp" android:paddingRight="10dp" android:text="@string/category_browser_title" android:textColor="#000000" android:textSize="24sp" /> <CheckBox android:id="@+id/category_browser_list_checkbox" android:layout_width="40dp" android:layout_height="40dp" android:layout_gravity="center_vertical" android:layout_weight="0" android:clickable="false" /> </LinearLayout> 

код:

 protected LinearLayout getListElementView() { View listItem = inflator.inflate(R.layout.category_browser_list_item, null); LinearLayout listElement = (LinearLayout)listItem.findViewById(R.id.category_browser_list_item); return listElement; } public class CategoryListAdapter extends BaseAdapter { @Override public int getCount() { int count = null != categories && null != categories.categories ? categories.categories.size() : 0; Log.d(TAG, "getCount:" + count); return count; } @Override public Category getItem(int position) { return null != categories && null != categories.categories ? categories.categories.get(position) : null; } @Override public long getItemId(int position) { return position; } // create a new ImageView for each item referenced by the Adapter @Override public View getView(int position, View convertView, ViewGroup parent) { LinearLayout listView = null; if (convertView != null) { // if it's not recycled, initialize some attributes listView = (LinearLayout)convertView; } if (listView == null) { // if it's not recycled, initialize some attributes listView = getListElementView(); } final Category category = getItem(position); category.setListView(listView); File cacheIconFile = category.getCacheIconFile(); ImageView imageView = (ImageView)listView.findViewById(R.id.category_browser_list_icon); if (cacheIconFile.exists()) { imageView.setImageURI(Uri.fromFile(cacheIconFile)); } else { Drawable noIcon = getResources().getDrawable(R.drawable.icon); imageView.setImageDrawable(noIcon); } // Log.i(TAG, category.name + ": " + category.iconUrl + ": " + category.downloadBaseUrl); if (null != category.name) { TextView textView = (TextView)listView.findViewById(R.id.category_browser_list_title); textView.setText(category.name); } listView.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { //start downloading category with downloadmanager //(category); Intent intent = category.getIntent(); if (null != intent) startActivity(intent); else { category.setStatus(Category.CategoryDownloadStatus.DOWNLOADING); downloadLocalePackage(category); } } }); return listView; } } 

Удалите android:clipChildren="false" из вашего объявления XML ListView . В то время как эффект, который вы видите, может быть ошибкой в ​​2.2 / 2.3, которая была решена в более поздних версиях, этот атрибут действительно не имеет большого значения в ListView .

Intereting Posts
Android MediaPlayer получает объем Расчет размера Android Dimens для разных папок значений Retrofit2 Android: ожидается BEGIN_ARRAY, но BEGIN_OBJECT в строке 1 столбец 2 путь $ Для Instant Run требуется «Инструменты | Android | Включить интеграцию ADB ' Как добавить информацию о профиле в ящик для Android-навигации? Программно добавить виджет на главный экран в Android Создать простую алфавитную прокрутку в ListView? Является ли просмотр в памяти телефона андроида возможным с помощью phoengap? Как установить максимальные символы в строке для просмотра текста в android Как установить несколько интервалов в тексте TextView (щелчок и полужирный) BitmapFactory возвращает null, хотя есть изображение Как настройка baselineAligned to false улучшает производительность в LinearLayout? Как включить адресную панель в Android WebView? Конвертировать андроид UI xml в код Eclipse пытается создать файлы в моих каталогах .svn … как я могу сказать, чтобы это остановилось?