Tôi mới sử dụng Android và tôi đang gặp sự cố sau. Tôi đang phát triển cho cả hai, Android 2 và 3, và đây là lý do tại sao tôi sử dụng các mảnh vỡ. Tuy nhiên, để làm cho ứng dụng hoạt động trên các thiết bị Android 2, tôi nhập android.support.v4.app.ListFragment. Tôi cần phải duy trì lựa chọn trong ListFragment của tôi khi định hướng của màn hình thay đổi. Tôi đang ghi đè phương thức onSaveInstanceState()
và đặt một gói vào gói. Khi màn hình được xoay, phương thức này được gọi và int được thêm vào gói. Tuy nhiên, khi gọi là onActivityCreated()
, gói của nó là rỗng. Tôi đang làm theo ví dụ được cung cấp trên trang web Android: http://developer.android.com/reference/android/app/Fragment.html, nhưng như đã đề cập ở trên - sau khi onSaveInstanceState()
được gọi, gói trong onActivityCreated()
vẫn không có giá trị.Android ListFragment không lưu gói trong onSaveInstanceState()/không truy xuất gói trong onActivityCreated()
Dưới đây là các mã:
import android.support.v4.app.ListFragment;
public class VisitsHomeFragment extends ListFragment {
private int selectedPosition = -1;
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
if (savedInstanceState != null) {
if (savedInstanceState.containsKey("SELECTED_POSITION")) {
selectedPosition = savedInstanceState.getInt("SELECTED_POSITION");
}
}
}
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("SELECTED_POSITION", selectedPosition);
}
}
tôi sẽ đánh giá cao bất kỳ giúp đỡ về vấn đề này.
onRestoreInstanceState() không khả dụng cho các đoạn. – Maria
Chỉ đề xuất của tôi là gỡ lỗi các nguồn compat để xem bạn có thể xử lý những gì đang diễn ra hay không. – PJL
Tôi đã chơi với dự án mẫu (HoneycombGallery), thêm Thư viện tương thích vào nó và mọi thứ hoạt động tốt ... Trong ứng dụng của tôi - nó không. Giải pháp tạm thời cho tôi là thêm 'android: configChanges =" orientation "' vào tệp kê khai, nhưng nó không giải quyết được bí ẩn của gói bị mất (thực sự nghĩ đến việc viết một cuốn sách có tựa đề "Bí ẩn của gói bị mất") ;-)). – Maria