我有ListView
(在ListFragment
之內)藉助LoaderManager
加載數據,我附上了headerView
和footerView
。 我的問題是,這樣做後,它顯示頁腳後顯示大量的空白(如幾乎整個屏幕)。 從我ListFragment一些代碼:Android:ListFragment顯示空白區域
public class NewsDetailsFragment extends ListFragment implements
LoaderManager.LoaderCallbacks<Cursor> {
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
if (getArguments().containsKey(Const.ARG_ITEM_ID)) {
mId = getArguments().getLong(Const.ARG_ITEM_ID);
getLoaderManager().initLoader(NEWS_DETAILS_LOADER_ID, null, this);
getLoaderManager().initLoader(COMMENTS_LOADER_ID, null, this);
}
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
mCommentsAdapter = new CommentsListAdapter(getActivity(), null, 0);
View rootView = inflater.inflate(R.layout.frag_news_details_comments,
container, false);
return rootView;
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
mHeaderView = LayoutInflater.from(getActivity()).inflate(
R.layout.header, getListView(), false);
mFooterView = LayoutInflater.from(getActivity()).inflate(
R.layout.footer, getListView(), false);
setUI();
setAction();
if (mHeaderView != null) {
getListView().addHeaderView(mHeaderView);
}
if (mFooterView != null) {
getListView().addFooterView(mFooterView);
}
setListAdapter(mCommentsAdapter);
}
顯然,這是不是從我ListFragment類的全部代碼,但其他的東西大多與數據如何被操縱(Loader Callbacks
等)。如果需要添加完整的代碼以便能夠得到正確的答案,我會按需添加。
至於屏幕看起來應該像一個總體思路,標題顯示有關文章的一些數據(其中包含了一堆TextViews
,ImageViews
和Webview
),本文就ListView
顯示評論(如果有任何),並且頁腳顯示一個寫入評論的表單。
LE:這是它的樣子:
LE2:此截圖顯示headerView和footerView如何是有限的。 headerView結束於「0評論這篇文章:」,然後是footerView。在這兩者之間,應該顯示的評論列表(如果有的話)
LE3:爲了讓自己顯得更加清晰:我會顯示錯誤(紅色),右(綠色)它應該顯示的方式。
2x onCreateView? – greenapps 2014-10-10 07:13:46
@greenapps我不好,我複製粘貼它錯了。現在它已被編輯。 – DoruAdryan 2014-10-10 07:15:57
所以標題位於屏幕頂部,頁腳位於屏幕底部?並沒有足夠的項目來填充屏幕? – greenapps 2014-10-10 07:20:32