Android ListView padding не работает для полосы прокрутки?

Я занимаюсь разработкой игры для Android и в виде экрана лобби с комнатами, у меня есть весь контент экрана внутри гигантского свитка. Вот изображение этого: http://postimg.org/image/s64pzkxkz/

Проблема в том, что: хотя я помещаю android:paddingBottom="40sp" в ListView(чтобы он был немного выше нижней части гигантской прокрутки), связанная с ним полоса прокрутки перекрывает гигантскую прокрутку. Есть гигантская серая линия, которая касается нижней части свитка... Это моя полоса прокрутки.

Вот код:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/idqualquersotestarlayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:background="@drawable/background_popups_modo_casual" >

<LinearLayout 
             android:layout_width="wrap_content"
             android:layout_height="wrap_content"
            android:id="@+id/tituloCasual"
            android:background="@drawable/plaquinha_treinamento"
            android:layout_centerHorizontal="true"
            android:gravity="center" >

            <TextView 
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" 
                android:textSize="40sp" 
                android:singleLine="true" 
                android:layout_marginTop="20sp"
                android:text="@string/modo_casual"
                android:id="@+id/textoTituloCasual"/>
</LinearLayout>
<ImageView
    android:id="@+id/cordasPlacaCasual"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/tituloCasual"
    android:layout_centerHorizontal="true"
    android:src="@drawable/cordas_placa_treinamento"
    android:layout_marginTop="-5sp" />
 <RelativeLayout
    android:id="@+id/pergaminho"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/cordasPlacaCasual"
    android:layout_marginTop="-60sp"
    android:background="@drawable/pergaminho" >
<Button
    android:id="@+id/botaoReload"
    style="?android:attr/buttonStyleSmall"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignTop="@+id/botaoCriarNovaSala"
    android:layout_toRightOf="@+id/botaoCriarNovaSala"
    android:text="@string/recarregar"
    android:onClick="recarregarSalas" />

<RelativeLayout
    android:id="@+id/spinnerELabelPesquisarSalas"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="110sp"
    android:layout_centerHorizontal="true" >

<TextView
    android:id="@+id/labelPesquisarSalas"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_marginLeft="28dp"
    android:text="@string/pesquisar_salas_por"
    android:layout_centerVertical="true"
    android:textSize="20sp"/>

<Spinner
    android:id="@+id/spinnerPesquisarSalasModoCasual"
    android:layout_width="200sp"
    android:layout_height="50sp"
    android:layout_toRightOf="@id/labelPesquisarSalas"
    android:layout_alignTop="@+id/labelPesquisarSalas"/>
</RelativeLayout>
<TextView android:id="@+id/alerta_salas_novas"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/alerta_novas_salas_criadas"
            android:layout_below="@+id/botaoCriarNovaSala"
            android:textSize="17sp"
            android:layout_marginLeft="28dp"
            android:layout_marginTop="30dp"
            android:visibility="invisible" />

 <LinearLayout
     android:id="@+id/cabecalho_tabela_listar_salas"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:layout_below="@+id/alerta_salas_novas"
     android:layout_marginTop="5dp"
     android:background="@drawable/red_header"
     android:layout_alignLeft="@+id/lista_salas_abertas"
     android:layout_alignRight="@+id/lista_salas_abertas" >

     <TextView
            android:id="@+id/label_titulo_do_jogador"
            android:layout_width="0px"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:layout_gravity="center"
            android:text="@string/dan"
            android:textColor="#FFFFFF" />
    <TextView
            android:id="@+id/label_titulo_username"
            android:layout_width="0px"
            android:layout_weight="3"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:layout_gravity="center"
            android:text="@string/email"
            android:textColor="#FFFFFF" />

        <TextView
            android:id="@+id/label_categorias_selecionadas"
            android:layout_width="0px"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:gravity="center"
            android:text="@string/categorias"
            android:textColor="#FFFFFF" />

        <TextView
            android:id="@+id/label_entrar_na_sala"
            android:layout_width="0px"
            android:layout_weight="1"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:gravity="center"
            android:text=""
            android:textColor="#FFFFFF" />

</LinearLayout>

<ListView
    android:id="@+id/lista_salas_abertas"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignRight="@+id/spinnerELabelPesquisarSalas"
    android:layout_alignLeft="@+id/spinnerELabelPesquisarSalas"
    android:layout_alignParentBottom="true"
    android:paddingBottom="40sp"
    android:layout_below="@+id/cabecalho_tabela_listar_salas"
    android:fastScrollEnabled="true"
    android:fastScrollAlwaysVisible="true"
    android:scrollbarStyle="insideInset"
    android:listSelector="@android:color/transparent" >
</ListView>

<Button
    android:id="@+id/botaoCriarNovaSala"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/spinnerELabelPesquisarSalas"
    android:layout_centerHorizontal="true"
    android:onClick="abrirTelaCriarNovaSala"
    android:text="@string/criar_nova_sala" />
</RelativeLayout>

Что я могу сделать, чтобы добавить отступы к полосе прокрутки?

1 ответ

Решение

Высота ListView - это сумма высот его дочерних элементов. Таким образом, отступы не будут влиять на список. Если вам нужна маржа, вы можете использовать marginBottom.

Но если вам нужен пробел внутри списка, вам придется добавить его к последнему дочернему элементу списка. Сын в методе getView адаптера listView вам нужно добавить что-то вроде этого:

public View getView(int position, View convertView, ViewGroup parent) {
    .
    .
    .

    if(position == getCount() - 1){
        view.setPadding(0, 0, 0, 40);
    }

    return view;
}
Другие вопросы по тегам