package com.aspsine.swipetoloadlayout.demo.fragment;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;
import com.aspsine.swipetoloadlayout.OnLoadMoreListener;
import com.aspsine.swipetoloadlayout.OnRefreshListener;
import com.aspsine.swipetoloadlayout.SwipeToLoadLayout;
import com.aspsine.swipetoloadlayout.demo.R;
import com.squareup.picasso.Picasso;
/**
* A simple {@link Fragment} subclass.
*/
public class TwitterOtherViewFragment extends BaseFragment implements OnRefreshListener, OnLoadMoreListener {
private SwipeToLoadLayout swipeToLoadLayout;
private TextView tvTitle;
private ImageView ivContent;
private String mTitle;
public static Fragment newInstance(String title) {
TwitterOtherViewFragment fragment = new TwitterOtherViewFragment();
Bundle bundle = new Bundle();
bundle.putString("OTHER_VIEW_TITLE", title);
fragment.setArguments(bundle);
return fragment;
}
public TwitterOtherViewFragment() {
// Required empty public constructor
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mTitle = getArguments().getString("OTHER_VIEW_TITLE");
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = null;
if (mTitle.equals("FrameLayout")) {
view = inflater.inflate(R.layout.fragment_twitter_other_framelayout, container, false);
} else if (mTitle.equals("RelativeLayout")) {
view = inflater.inflate(R.layout.fragment_twitter_other_relativelayout, container, false);
} else if (mTitle.equals("LinearLayout")) {
view = inflater.inflate(R.layout.fragment_twitter_other_linearlayout, container, false);
} else if (mTitle.equals("ImageView")) {
view = inflater.inflate(R.layout.fragment_twitter_other_imageview, container, false);
} else if (mTitle.equals("TextView")) {
view = inflater.inflate(R.layout.fragment_twitter_other_textview, container, false);
}
// Inflate the layout for this fragment
return view;
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
swipeToLoadLayout = (SwipeToLoadLayout) view.findViewById(R.id.swipeToLoadLayout);
tvTitle = (TextView) view.findViewById(R.id.tvTitle);
View targetView = view.findViewById(R.id.swipe_target);
swipeToLoadLayout.setOnRefreshListener(this);
swipeToLoadLayout.setOnLoadMoreListener(this);
if (targetView != null) {
if (targetView instanceof TextView) {
tvTitle = (TextView) targetView;
} else if (targetView instanceof ImageView) {
ivContent = (ImageView) targetView;
}
}
if (tvTitle != null) {
tvTitle.setText(mTitle + " Demo");
}
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
swipeToLoadLayout.post(new Runnable() {
@Override
public void run() {
swipeToLoadLayout.setRefreshing(true);
}
});
}
@Override
public void onPause() {
super.onPause();
if (swipeToLoadLayout.isLoadingMore()) {
swipeToLoadLayout.setLoadingMore(false);
}
if (swipeToLoadLayout.isRefreshing()) {
swipeToLoadLayout.setRefreshing(false);
}
}
@Override
public void onLoadMore() {
swipeToLoadLayout.postDelayed(new Runnable() {
@Override
public void run() {
swipeToLoadLayout.setLoadingMore(false);
}
}, 2000);
}
@Override
public void onRefresh() {
swipeToLoadLayout.postDelayed(new Runnable() {
@Override
public void run() {
if (ivContent != null) {
Picasso.with(getActivity()).load("https://avatars0.githubusercontent.com/u/1912775?v=3&s=460").into(ivContent);
}
swipeToLoadLayout.setRefreshing(false);
}
}, 2000);
}
}