/* * * * Copyright 2015 Van Shu * * * * Licensed under the Apache License, Version 2.0 (the "License"); * * you may not use this file except in compliance with the License. * * You may obtain a copy of the License at * * * * http://www.apache.org/licenses/LICENSE-2.0 * * * * Unless required by applicable law or agreed to in writing, software * * distributed under the License is distributed on an "AS IS" BASIS, * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * * See the License for the specific language governing permissions and * * limitations under the License. * */ package com.mobimvp.cliques.ui.fragment; import android.app.Activity; import android.os.Bundle; import android.support.v4.view.ViewCompat; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import com.android.volley.Response; import com.mobimvp.cliques.R; import com.mobimvp.cliques.model.Shot; import com.mobimvp.cliques.service.DribbbleApi; import com.mobimvp.cliques.service.GsonRequest; import com.mobimvp.cliques.ui.adapter.ShotsAdapter; import com.mobimvp.cliques.ui.widgets.CollectionView; import static com.mobimvp.cliques.util.LogUtils.makeLogTag; public class HomeFragment extends BaseFragment { private static final String TAG = makeLogTag(HomeFragment.class); private CollectionView mCollectionView; private ShotsAdapter mShotsAdapter; private View mContentView; public boolean canCollectionViewScrollUp() { return ViewCompat.canScrollVertically(mCollectionView, -1); } public void setContentTopClearance(int topClearance) { mCollectionView.setContentTopClearance(topClearance); } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setHasOptionsMenu(false); } @Override public void onPause() { super.onPause(); } @Override public void onResume() { super.onResume(); } public void requestData() { addRequest(new GsonRequest<>(DribbbleApi.getAuthenticatedUserFollowingShots(), Shot[].class, responseListener, errorListener)); } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); setContentView(mContentView); requestData(); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { mContentView = inflater.inflate(R.layout.fragment_home, container, false); mCollectionView = (CollectionView) mContentView.findViewById(R.id.listview); return super.onCreateView(inflater,container,savedInstanceState); } @Override public void onAttach(Activity activity) { super.onAttach(activity); } @Override public void onDetach() { super.onDetach(); } @Override public void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); } private Response.Listener<Shot[]> responseListener = new Response.Listener<Shot[]>() { @Override public void onResponse(Shot[] response) { if (response == null){ setEmptyView(); }else{ // mShotsAdapter = new ShotsAdapter(response); mCollectionView.setAdapter(mShotsAdapter); showResult(); } } }; }