コード例 #1
0
 // onStop() --> onDestroyView() --> onDestroy() --> onDetach() --> fragment is destroyed
 // The system calls onPause() as the first indication that the user is leaving the fragment
 // (though it does not always mean the fragment is being destroyed). This is usually where you
 // should commit any changes that should be persisted beyond the current user session (because
 // the user might not come back).
 @Override
 public void onPause() {
   if (isTestOutput) {
     System.out.println("onPause activated. sync called");
   }
   if (mListener != null) {
     // use checkedItemPositions array to update selected items in Main Activity
     mListener.syncSelectedTeams(fourthFragListView.getCheckedItemPositions());
   }
   super.onPause();
 }
コード例 #2
0
  @Override
  public void onViewCreated(View view, Bundle savedInstanceState) {
    fourthFragListView = (ListView) view.findViewById(R.id.fourth_frag_listview);

    // create a dummy team list - in the production app, this list would be provided by the
    // webserver
    teamList = new ArrayList<>();
    String teamInfo;
    for (int i = 1; i < (numTeams + 1); i++) {
      teamInfo = "Team " + i + "  --  Teamlead" + i;
      teamList.add(teamInfo);
    }

    // instantiate adapter with data list
    teamAdapter = new TeamAdapter(getContext(), teamList);

    // attach adapter to listview
    fourthFragListView.setAdapter(teamAdapter);

    fourthFragListView.setOnItemClickListener(
        new android.widget.AdapterView.OnItemClickListener() {
          @Override
          public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            // handle response in separate method
            clickResponse(position);
          }
        });

    // bring listview's selected-items list up to date with preselected teams so teams
    // whose appointments are all selected show the proper highlighting on startup
    SparseBooleanArray startupSelectedList = mListener.getSBAForSelectedTeams();
    SparseBooleanArray checkedItemPositions = fourthFragListView.getCheckedItemPositions();
    for (int i = 0; i < startupSelectedList.size(); i++) {
      checkedItemPositions.append(
          (startupSelectedList.keyAt(i) - 1), // team i is in listview item i-1
          startupSelectedList.valueAt(i));
    }
  } // end onViewCreated