回答:
android:footerDividersEnabled="false"
リストビューの説明に追加するだけです
layoutHeight="wrap_content"
と、下部の仕切りが表示されなくなります。
@ScootrNovaが言ったように、これはandroid 4.4.xでは動作が異なる(別名バギー)ようです(問題がいつ導入されたのか正確にはわかりません)。
これは、4.4.xで+ - を使用する特定のケースに関連しています。フッターはビューの外側に描画されますが、パディングするクリップはそれを表示します。padding
clipToPadding="false"
私が使用した解決策は、フッターのオーバースクロール(android:overScrollFooter
)を透明に設定することでした。
私の最終的な解決策(android:footerDividersEnabled
後方互換性のために保持されていることに注意してください):
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="@dimen/activity_horizontal_margin"
android:divider="@color/divider"
android:dividerHeight="1px"
android:clipToPadding="false"
android:scrollbarStyle="outsideInset"
android:overScrollFooter="@android:color/transparent"
android:footerDividersEnabled="false"
/>
4.1.1を実行するHTC One X、4.4.4を実行するNexus 5、および4.4.2を実行するSamsung Galaxy S5でテスト済み(@ Dallas187に感謝)。Lollipopも動作しているようです。(コメント者に感謝!)
android:overScrollFooter
ことで、私はうまくいった。5.0.2と5.1に取り組んでいます。
android:footerDividersEnabled="false"
バックコンパットを必要とすると信じています
コードでこれを行う場合は、次のとおりです。
listView.setFooterDividersEnabled(false);
また、ListFragmentを使用している場合は、次の方法でリストビューを取得できます。
listFragment.getListView().setFooterDividersEnabled(false);
これはグーグルで1位になったのでコメントのみ
以下の行は、lollypopデバイスでは機能しないようです。
listView.setFooterDividersEnabled(false);
したがって、以下のコードを使用して、リストの最後の項目の後の仕切りを削除する必要があります。
listView.setOverscrollFooter(new ColorDrawable(Color.TRANSPARENT));