Articles of listview

Android Бесконечное управление памятью списков

Я реализую бесконечный список, загружая больше элементов в arraylist в методе onScrollStateChanged (…). Если я реализую эту схему для извлечения более 1 миллиона записей, у меня будет миллион объектов, добавленных в arraylist, который будет интенсивным в памяти. Какие схемы я могу использовать для эффективного управления памятью? PS: Вопрос касается количества элементов, которые можно поместить в […]

Черная линия под некоторыми элементами ListView

Интересная проблема, с которой я сталкиваюсь в ListView. Он использует стандартный ArrayAdapter с настраиваемым XML-макетом для элементов внутри. Простой XML: <?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/text1" android:background="@drawable/list_bg_blue" android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingTop="20dp" android:paddingBottom="20dp" android:typeface="serif" android:textSize="20px" android:textStyle="bold|italic" android:textColor="#FF1e5a82" android:shadowColor="#FFFFFFFF" android:shadowDx="1" android:shadowDy="1" android:shadowRadius="1" /> Я не думаю, что там что-то есть, это проблема, но у меня появляются какие-то странные […]

ListView random IndexOutOfBoundsException на Froyo

У меня есть приложение с множеством загрузок, и я получаю много этой ошибки: 16783 AndroidRuntime E java.lang.IndexOutOfBoundsException: Invalid index 0, size is 0 16783 AndroidRuntime E at java.util.ArrayList.throwIndexOutOfBoundsException(ArrayList.java:257) 16783 AndroidRuntime E at java.util.ArrayList.get(ArrayList.java:311) 16783 AndroidRuntime E at android.widget.HeaderViewListAdapter.isEnabled(HeaderViewListAdapter.java:16 4) 16783 AndroidRuntime E at android.widget.ListView.dispatchDrawWithExcessScroll_Default(ListView.java:3 288) 16783 AndroidRuntime E at android.widget.ListView.dispatchDraw(ListView.java:3029) 16783 AndroidRuntime E at android.view.View.draw(View.java:6743) […]

Объяснение state_activated, state_selected, state_pressed, state_focused для ListView

Может ли кто-нибудь объяснить (или указать мне ссылку, которая объясняет) разницу между state_activated, state_selected, state_pressed и state_focused для элементов ListView? Все ли они действительны для ListViews? Имеет ли значение, если используется сенсор или клавиатура? Эта ссылка больше не является действительной. Большое спасибо!

Строки списка Android ListView в ScrollView не отображаются полностью – обрезаны

Я столкнулся с проблемой при встраивании ListView внутри ScrollView или, по крайней мере, именно там, где я думаю, проблема возникает. Элемент ListView довольно простой: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/item_root" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/general_background_list_middle" android:paddingTop="4dp" android:paddingBottom="4dp" android:paddingRight="0dp" android:paddingLeft="0dp"> <ImageView android:id="@+id/chat_friends_avatar" android:layout_width="45dp" android:layout_height="45dp" android:layout_marginLeft="7dp" android:layout_marginRight="8dp" android:paddingRight="0dp" android:paddingLeft="0dp" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:src="@drawable/friends_icon_avatar_default"/> <TextView android:id="@+id/chat_message_text" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_toRightOf="@id/chat_friends_avatar" android:layout_alignParentTop="true" android:layout_marginRight="35dp" […]

Как скрыть элемент в списке в Android

Я знаю, этот вопрос задавали раньше, но я не видел для него рабочего ответа. Есть ли способ скрыть некоторые элементы в ListView без изменения исходных данных? Я попытался установить видимость представления элемента, чтобы он исчез, он больше не будет отображаться, но место, зарезервированное для этого элемента, все еще существует. Я также установил: android:dividerHeight="0dp" android:divider="#FFFFFF" Безуспешно.

Xamarin.Forms ListView: установка цвета подсветки элемента

Используя Xamarin.Forms , как я могу определить цвет выделения / фона для выбранного элемента ListView Listed? (Мой список имеет черный фон и белый цвет текста, поэтому цвет подсветки по умолчанию на iOS слишком яркий. Напротив, на Android нет подсветки вообще – до тонкой горизонтальной серой линии.) Пример: (слева: iOS, справа: Android, при нажатии «Barn2»)

Checkbox не установлен, когда я просматриваю список на Android

Я новичок в разработке Android. Я создал список с textbox и checkbox . Когда я устанавливаю checkbox и прокручиваю его, чтобы проверить некоторые другие элементы в представлении списка, более старые неконтролируемые. Как избежать этой проблемы в listview ? Прошу вас, указав мой код. Вот код: main.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView […]

Перетаскивание сортировки адаптера курсора и адаптера списка

Я очень удивлен, что есть такая небольшая информация о перетаскивании с адаптером курсора и адаптером списка. Самый близкий пост, который я нашел в stackoverflow, следующий: https://stackoverflow.com/a/5047618/317889 Но мне непонятно, как реализовать то, что предлагает CommonsWare, – разъяснение было бы очень полезно. Пока я привязываю данные курсора к адаптеру списка и устанавливаю его следующим образом: mMyCursorAdapter […]

Android – почему это говорит мне, что «Content view еще не создан»?

Это заполнение списка в фрагменте из базы данных: public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { LinearLayout Layout5 = (LinearLayout) inflater.inflate(R.layout.tab_frag5_layout, container, false); Cursor allBands; MyDatabase db; Context ctx = (Context)TabFragment5.this.getActivity(); db = new MyDatabase(ctx); allBands = db.getBands(); ListAdapter adapter = new SimpleCursorAdapter (ctx, R.layout.listelement, allBands, new String[] {"BandName"}, new int[] {R.id.text15}); getListView().setAdapter(adapter); return […]