コード例 #1
0
  @Nullable
  @Override
  public View onCreateView(
      LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    super.onCreateView(inflater, container, savedInstanceState);
    View view = inflater.inflate(R.layout.fragment_schedule, container, false);

    scheduleView = (RecyclerView) view.findViewById(R.id.schedule);
    swipeRefreshLayout = (SwipeRefreshLayout) view.findViewById(R.id.swipeContainer);

    mActivity = getActivity();
    scheduleView.setLayoutManager(new LinearLayoutManager(mActivity));
    scheduleView.setItemAnimator(new DefaultItemAnimator());

    swipeRefreshLayout.setEnabled(false);
    swipeRefreshLayout.post(
        new Runnable() {
          @Override
          public void run() {
            swipeRefreshLayout.setRefreshing(true);
          }
        });

    Call<List<Room>> roomCall = COSCUPClient.get().room();
    roomCall.enqueue(
        new Callback<List<Room>>() {
          @Override
          public void onResponse(Call<List<Room>> call, Response<List<Room>> response) {
            if (response.isSuccessful()) {
              List<Room> rooms = response.body();
              HashMap<String, String> roomMap = new HashMap();
              for (Room room : rooms) {
                roomMap.put(room.getRoom(), room.getName());
              }
              getType(roomMap);
            } else {
              loadOfflineScedule();
            }
          }

          @Override
          public void onFailure(Call<List<Room>> call, Throwable t) {
            loadOfflineScedule();
          }
        });

    return view;
  }