我想在ListView下添加一個FloatingActionButton(以便該按鈕始終是ListView的最後一項)。 我找到了一個方法,可以做到這一點叫做addFooterView。 當我嘗試添加FAB不過,我得到一個錯誤:將FloatingActionButton作爲FooterView添加到ListView
android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.AbsListView$LayoutParams
好像我FAB的PARAMS不能被澆鑄成RelativeLayout的參數。 我該如何解決這個問題?或者有另一種方法來達到這種效果嗎?
我的(相關)XML:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.MainActivity">
<android.support.design.widget.AppBarLayout
android:id="@+id/toolbarContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:theme="@style/AppTheme.AppBarOverlay">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" />
</android.support.design.widget.AppBarLayout>
<ListView
android:id="@+id/container"
android:layout_below="@id/toolbarContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content">
</ListView>
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_below="@id/container"
android:layout_centerHorizontal="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="@dimen/fab_margin"
android:src="@android:drawable/ic_menu_add" />
我的代碼的
(相關)部分:
ListView container = (ListView)findViewById(R.id.container);
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
container.addFooterView(fab);
FAB用於在屏幕的右下角總是展示。大多數圖書館都會自動放置。請問爲什麼你需要重新調整到ListView的最後一項? – zIronManBox
zIronManBox他想要保存空間,直到最後一項顯示我猜。 – pratz9999