Реализовать onSaveInstanceState в Fragment. Сохранение конфигурации(Возможно повтор)

Рейтинг: 0Ответов: 0Опубликовано: 13.04.2015

Возможно повтор Никак не могу решить проблему с сохранением конфигурации, помогите код нагуглен, с мануалами не подружился ( уже неделю не могу разобраться. Заранее спасибо!

BitmapFactory.Options dimensions = new BitmapFactory.Options(); 
    dimensions.inJustDecodeBounds = true;
        btm_btn_sett = BitmapFactory.decodeResource(getActivity().getResources(), R.drawable.btn_sett, dimensions);
        btm_btn_info = BitmapFactory.decodeResource(getActivity().getResources(), R.drawable.btn_info, dimensions);
    settingsBtmHeight = dimensions.outHeight;
    settingsBtmWidth =  dimensions.outWidth;
    Display display = getActivity().getWindowManager().getDefaultDisplay();
    Point size = new Point();
    display.getSize(size);
    headerWidth = size.x/4;
    screenWidth = size.x;

    View rootView = inflater.inflate(R.layout.main_layout, container, false);

    wallPostsList = (PullAndLoadListView) rootView.findViewById(R.id.main_post_list);   
    LayoutInflater inflaterRelative = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    row = inflaterRelative.inflate(R.layout.main_list_header, wallPostsList, false);

    main_list_header = (RelativeLayout) row.findViewById(R.id.main_list_header);
    retryBtn = (Button) row.findViewById(R.id.retry);
    followers_count = (TextView) row.findViewById(R.id.followers_count);
    followers_layout = (LinearLayout)row.findViewById(R.id.followers_layout);

    posts_count = (TextView) row.findViewById(R.id.posts_count);
    posts_layout=(LinearLayout)row.findViewById(R.id.followers_layout);

    photos_count = (TextView) row.findViewById(R.id.photos_count);
    photos_layout =(LinearLayout)row.findViewById(R.id.photos_layout);

    feedbacks_count = (TextView) row.findViewById(R.id.feedbacks_count);
    feedbacks_layout =(LinearLayout)row.findViewById(R.id.photos_layout);

    settingsBtn = (Button) row.findViewById(R.id.settings_button);
    infoBtn = (Button) row.findViewById(R.id.info_button);
    RelativeLayout.LayoutParams followersLinearLayout = (RelativeLayout.LayoutParams ) followers_layout.getLayoutParams();
    RelativeLayout.LayoutParams postsLinearLayout = (RelativeLayout.LayoutParams ) posts_layout.getLayoutParams();
    RelativeLayout.LayoutParams photosLinearLayout = (RelativeLayout.LayoutParams ) photos_layout.getLayoutParams();
    RelativeLayout.LayoutParams feedbacksLinearLayout = (RelativeLayout.LayoutParams ) feedbacks_layout.getLayoutParams();
    RelativeLayout.LayoutParams main_list_header_relative = (RelativeLayout.LayoutParams ) main_list_header.getLayoutParams();

    followersLinearLayout.width=headerWidth;
    postsLinearLayout.width=headerWidth;
    photosLinearLayout.width=headerWidth;
    feedbacksLinearLayout.width=headerWidth;
    main_list_header_relative.height=screenWidth;
    followers_layout.setLayoutParams(followersLinearLayout);
    posts_layout.setLayoutParams(postsLinearLayout);
    photos_layout.setLayoutParams(photosLinearLayout);
    feedbacks_layout.setLayoutParams(feedbacksLinearLayout);
    main_list_header.setLayoutParams(main_list_header_relative);
    settingsBtmHeight = dimensions.outHeight;
    settingsBtmWidth =  dimensions.outWidth;
    RelativeLayout.LayoutParams settingsRelative = (RelativeLayout.LayoutParams ) settingsBtn.getLayoutParams();
    RelativeLayout.LayoutParams infoRelative = (RelativeLayout.LayoutParams ) infoBtn.getLayoutParams();

    settingsRelative.addRule(RelativeLayout.CENTER_VERTICAL);
    settingsRelative.setMargins(30, 30, 0, 30);

    infoRelative.addRule(RelativeLayout.CENTER_VERTICAL);
    infoRelative.setMargins(20, 30, 0, 30);

    settingsRelative.height=settingsBtmHeight;
    settingsRelative.width=settingsBtmWidth;

    infoRelative.height=settingsBtmHeight;
    infoRelative.width=settingsBtmWidth;

    settingsBtn.setLayoutParams(settingsRelative);
    infoBtn.setLayoutParams(infoRelative);
    community_status_txt = (TextView) row.findViewById(R.id.community_status);
    settingsBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            settingsActivity();
        }        
    });
    if(constants==null){
       constants = new Constants(getActivity().getApplicationContext());
    }

   if(constants.isNetworkConnected()){
      retryBtn.setVisibility(View.GONE);
   }else{
       retryBtn.setVisibility(View.VISIBLE);
   }
    getWallsData();
    setTitleCommunity();
    setHeaderValues();
    wallPostsList.addHeaderView(row);
    mPostListAdapter = new PostListAdapter(isCopyHistoryPostArrayList, activity);
    enterPostList(isCopyHistoryPostArrayList);
    infoBtn.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            infoActivity();
        }
    });

    wallPostsList.setOnLoadMoreListener(new OnLoadMoreListener() {          
        @Override
        public void onLoadMore() {
            new LoadMoreDataTask().execute();
        }
    });
    wallPostsList.setOnRefreshListener(new OnRefreshListener() {

        public void onRefresh() {
            // Do work to refresh the list here.
            new PullToRefreshDataTask().execute();
        }
    });
    retryBtn.setOnClickListener(new OnClickListener() {         
        @Override
        public void onClick(View v) {
            if(constants==null){
              constants = new Constants(getActivity().getApplicationContext());
            }
            if(constants.isNetworkConnected()){   
                getWallsData();
                    setTitleCommunity();
                    setHeaderValues();
                    mPostListAdapter = new PostListAdapter(isCopyHistoryPostArrayList, activity);
                    enterPostList(isCopyHistoryPostArrayList);  
                    retryBtn.setVisibility(View.GONE);
            } else{                 
               main_list_header.setBackgroundColor(getActivity().getResources().getColor(R.color.white));
               isCopyHistoryPostArrayList=new ArrayList<WallsData>();
                mPostListAdapter = new PostListAdapter(isCopyHistoryPostArrayList, activity);
                enterPostList(isCopyHistoryPostArrayList);  
                retryBtn.setVisibility(View.VISIBLE);
            }               
        }
    });
    return rootView;

Ответы

Ответов пока нет.