package com.android.pc.ioc.a.demo; import java.util.ArrayList; import java.util.HashMap; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ListView; import android.widget.TextView; import com.android.pc.ioc.app.Ioc; import com.android.pc.ioc.inject.InjectBinder; import com.android.pc.ioc.inject.InjectHttp; import com.android.pc.ioc.inject.InjectInit; import com.android.pc.ioc.inject.InjectPullRefresh; import com.android.pc.ioc.inject.InjectView; import com.android.pc.ioc.internet.FastHttpHander; import com.android.pc.ioc.internet.ResponseEntity; import com.android.pc.ioc.view.PullToRefreshManager; import com.android.pc.ioc.view.listener.OnClick; import com.android.pc.util.Handler_Inject; import com.android.pc.util.Handler_Time; import com.wash.activity.R; /** * 倒计时 * @author gdpancheng@gmail.com 2014-1-22 下午10:37:26 */ public class ElevenFragment extends BaseFragment { //pull上拉加载更多,down下拉刷新,默认false,默认关闭 @InjectView(pull = true,down = true) ListView list; @InjectView(binders = @InjectBinder(method = "click", listeners = { OnClick.class })) TextView emtpy; TimeAdapter dataAdapter; ArrayList<HashMap<String, Long>> data = new ArrayList<HashMap<String,Long>>(); @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.test_listview, container, false); Handler_Inject.injectFragment(this, rootView); return rootView; } @InjectInit private void init(){ //分钟 for (int i = 0; i < 100; i++) { Handler_Time time = Handler_Time.getInstance(); Handler_Time end = Handler_Time.getInstance("2014-07-10 08:10"); HashMap<String, Long> object = new HashMap<String, Long>(); object.put("start", time.getTimeInMillis()); if (i>10) { object.put("end", end.getTimeInMillis()); }else { object.put("limit", ((long)(i+1)*60*1000)); } data.add(object); } //这里是设置里面的文字 可以不设置 默认有 PullToRefreshManager.getInstance().setRelease_label("松开后刷新"); dataAdapter = new TimeAdapter(activity,data); list.setAdapter(dataAdapter); list.setEmptyView(emtpy); } /** * 方法名随意,但是确保参数要有int类型的,用来区分下拉和上拉 * @author gdpancheng@gmail.com 2014-3-12 上午9:35:15 * @param type * @return void */ @InjectPullRefresh private void call(int type){ //这里的type来判断是否是下拉还是上拉 switch (type) { case InjectView.PULL: FastHttpHander.ajaxGet("http://211.152.52.119:8080/app/api.php?act=category",this); break; case InjectView.DOWN: FastHttpHander.ajaxGet("http://211.152.52.119:8080/app/api.php?act=category",this); break; } } private void click(View v){ dataAdapter.notifyDataSetChanged(); } @InjectHttp private void result(ResponseEntity entity){ Ioc.getIoc().getLogger().s(entity.getContentAsString()); //完成 加载更多 PullToRefreshManager.getInstance().onFooterRefreshComplete(); //完成 刷新 PullToRefreshManager.getInstance().onHeaderRefreshComplete(); //关闭顶部的下拉 PullToRefreshManager.getInstance().headerUnable(); //打开顶部的下拉 PullToRefreshManager.getInstance().headerEnable(); //关闭底部的加载 PullToRefreshManager.getInstance().footerUnable(); //打开顶部的加载 PullToRefreshManager.getInstance().footerEnable(); } }