Tôi muốn giữ lại những phương pháp:Làm thế nào có thể tạo kiểu ListView của một ListFragment
setListShown(true);
setListShownNoAnimation(true);
nhưng nếu tôi sử dụng
onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
để thổi phồng các Fragment
với một bố trí tùy chỉnh phong cách, các phương pháp trước đó có thể không được sử dụng và hiển thị ngoại lệ này:
07-30 20:17:46.937: E/AndroidRuntime(1374): Caused by: java.lang.IllegalStateException: Can't be used with a custom content view
07-30 20:17:46.937: E/AndroidRuntime(1374): at android.support.v4.app.ListFragment.setListShown(ListFragment.java:282)
07-30 20:17:46.937: E/AndroidRuntime(1374): at android.support.v4.app.ListFragment.setListShown(ListFragment.java:258)
Vì vậy, giải pháp nào có thể?
EDIT:
Các Fragment
sử dụng một bộ nạp để cư ListView
của nó từ một cơ sở dữ liệu. Vì vậy, đó là lý do tại sao tôi muốn giữ lại các phương pháp đó, họ đang cần thiết ở đây:
public void onLoadFinished(Loader<Cursor> loader, Cursor data) {
mAdapter.swapCursor(data);
if (isResumed()) {
setListShown(true);
} else {
setListShownNoAnimation(true);
}
}
Giải pháp đơn giản nhất để làm cho mã của riêng tôi dựa trên nguồn ListFragment
, một cũng thêm widget tiến bộ để bố trí để hiển thị cùng một hiệu ứng. Bây giờ, tôi sẽ xóa những dòng như tôi đã nói. Nếu tôi sửa đổi, tôi sẽ dán nó ở đây.
XML gì được bạn lạm phát? – Estel
Nó chỉ là một linearlayout với listview, truyền cho chúng thuộc tính style. – giorgiline