У меня есть просмотр списка изображений, и я не могу получить дополнительное расстояние между вертикальными элементами. Пробовал много вещей, но пока не повезло. Я не могу понять, откуда происходит интервал.listview дополнительный интервал между пунктами
Вот XML, содержащий элемент управления ListView (Это обычай ListView, что делает перетаскивания/сортировки)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:id="@+id/fan_ban_ctn"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.1"
android:background="@color/white"
android:orientation="horizontal" >
<Button
android:id="@+id/fan_button"
style="?android:attr/borderlessButtonStyle"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_gravity="left|center_vertical"
android:layout_weight="0.33"
android:text="@string/fan"
android:textSize="14sp" />
<Button
android:id="@+id/ban_button"
style="?android:attr/borderlessButtonStyle"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical|center_horizontal"
android:layout_weight="0.33"
android:text="@string/ban"
android:textSize="14sp" />
<Button
android:id="@+id/ctn_button"
style="?android:attr/borderlessButtonStyle"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_gravity="right|center_vertical"
android:layout_weight="0.33"
android:text="@string/ctn"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
android:id="@+id/wireless_mgmt"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="0.9"
android:background="@color/white"
android:orientation="horizontal"
android:weightSum="1.0" >
<com.att.attbusiness.widget.DynamicListView
android:id="@+id/widget_list"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.10"
android:divider="@android:color/transparent"
android:dividerHeight="2dp"/>
<ScrollView
android:id="@+id/widget_content"
android:layout_width="0dp"
android:layout_height="fill_parent"
android:layout_marginRight="12dp"
android:layout_weight="0.85"
android:background="@color/white" >
<FrameLayout
android:id="@+id/wireless_fragment_Container"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</ScrollView>
</LinearLayout>
и элемент списка здесь:
<ImageView
android:id="@+id/widget_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/wm_plan" />
Когда я программно добавить дополнительные ImageViews в обычае Adaper, я получаю это для результата:
Как можно уменьшить расстояние между изображениями?
Хотя я добавляю изображения в список программно, я не делаю никаких макетов или полей или чего-либо еще - просто изображений. Я, однако, читаю мои изображения несколько иначе. Я загружаюсь из идентификатора ресурса, который я создаю, используя некоторые манипуляции с строками и назначая растровые изображения в ArrayLists. У меня есть выбранная и не выбранная версия каждого, оба одинакового размера.
private final static String[] widgetNames = new String[] {
"wm_device", "wm_userinfo", "wm_billing", "wm_plan", "wm_features", "wm_access_options", "wm_applications",
"wm_analytics", "wm_manage_a_list"
};
<...>
for (int i = 0; i < widgetNames.length; ++i) {
int normalID = this.getResources().getIdentifier(widgetNamesOrdered[i], "drawable", "com.att.attbusiness");
int selectID = this.getResources().getIdentifier(widgetNamesOrdered[i]+"_selected", "drawable", "com.att.attbusiness");
mWidgetList.add(widgetNamesOrdered[i]);
if (normalID != 0) {
widgetIcons.add(i, (Bitmap) BitmapFactory.decodeResource(this.getResources(), normalID));
}
if (selectID != 0) {
widgetIconsSelected.add(i, (Bitmap) BitmapFactory.decodeResource(this.getResources(), selectID));
}
}
вот часть моего пользовательского адаптера, который устанавливает изображение в ListView:
// if this button isn't the selected, make sure it's off
if(mSelectedPosition != position){
holder.widget.setImageBitmap(widgetIcons.get(position));
}
else {
holder.widget.setImageBitmap(widgetIconsSelected.get(position));
if(mSelectedBtn != null && holder.widget != mSelectedBtn){
mSelectedBtn = holder.widget;
}
}
Показать создание ImageView и программно добавить его часть вашего кода. – Devrim
добавил, что часть моего getView() в моем настраиваемом адаптере – Martin
попробовала установить LinearLayouts в layout_height = "wrap_content" ?, особенно тот, который содержит поля настройки ListView – CSmith