ImageLoader和MyAsyncTask

原创 2016年06月01日 09:33:50
//ImageLoader需要导包,需要组册;
public class MyApplicationextends Application {
    @Override
    public void onCreate() {
        ImageLoaderConfiguration configuration = ImageLoaderConfiguration.createDefault(this);
        ImageLoader.getInstance().init(configuration);
        
    }
}

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


public class MyAdapter extends BaseAdapter {
    public Context context;
    public List<Info> list;
    public MyAdapter(Context context,List<Info> list){
        this.context=context;
        this.list=list;
    }
    @Override
    public int getCount() {
        // TODO Auto-generated method stub
        return list.size();
    }

    @Override
    public Object getItem(int arg0) {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public long getItemId(int arg0) {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public View getView(int arg0, View v, ViewGroup arg2) {
        // TODO Auto-generated method stub
        v=View.inflate(context, R.layout.item, null);
        ImageView image = (ImageView)v.findViewById(R.id.image);
        TextView text = (TextView)v.findViewById(R.id.text);
        TextView time = (TextView)v.findViewById(R.id.time);
        ImageLoader.getInstance().displayImage(list.get(arg0).picurl, image);
        text.setText(list.get(arg0).title);
        time.setText(list.get(arg0).uptime);
        return v;
    }

}
//////////////////////////////////////////////////////////////////////////////////////////////////////////


public class MyAsyncTaskextends AsyncTask<String,String,String>{

    private String json;

    protected String doInBackground(String...path) {
        // TODO Auto-generated method stub
        try {
            HttpClient http=new DefaultHttpClient();
            HttpGet get=new HttpGet(path[0]);
            HttpResponse execute = http.execute(get);
            HttpEntity entity = execute.getEntity();
            json = EntityUtils.toString(entity, "gbk");
        } catch (ClientProtocolException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return json;
    }

}
/////////////////////////////////////////////////////////////////////////////////////////////////////////


public class F2 extends Fragment{
    String path="http://172.17.29.120/localuser/ljy/ndhx/peixundongtai.json";
    private ListView list_id;
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        View v = View.inflate(getActivity(),R.layout.f1, null);
        list_id = (ListView)v.findViewById(R.id.list_id);
        getJson();
        return v;
    }
    
    private void getJson() {
        try {
            MyAsyncTask my=new MyAsyncTask();
            String json = my.execute(path).get();

            Gson gson=new Gson();
            Bean bean = gson.fromJson(json, Bean.class);
            List<Info> list = bean.info;
            list_id.setAdapter(new MyAdapter(getActivity(), list));
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (ExecutionException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////


public class MainActivity extends FragmentActivity implements OnClickListener{
    List<Fragment> list=new ArrayList<Fragment>();
    List<Button> list1;
    private ViewPager page;
    private Button but1_id;
    private Button but3_id;
    private Button but2_id;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //获得控件
        getDText();
        //注册监听
        getonclic();
        //添加Fragment到集合中
        getAddFragment();
        getButoon();
        //适配器
        getFragment();
        //添加Butoon到集合中
        getpagechange();
    }

    private void getDText() {
        // TODO Auto-generated method stub
        page = (ViewPager)findViewById(R.id.page);
        but1_id=(Button)findViewById(R.id.but1_id);
        but2_id = (Button)findViewById(R.id.but2_id);
        but3_id = (Button)findViewById(R.id.but3_id);
    }

    private void getonclic() {
        // TODO Auto-generated method stub
        but1_id.setOnClickListener(this);
        but2_id.setOnClickListener(this);
        but3_id.setOnClickListener(this);
    }
    
    private void getAddFragment() {
        // TODO Auto-generated method stub
        list.add(new MyFragment());
        list.add(new F2());
        list.add(new F3());
    }
    
    private void getFragment() {
        // TODO Auto-generated method stub
        page.setAdapter(new MyAdapter(getSupportFragmentManager(),list));
    }

    private void getButoon() {
        // TODO Auto-generated method stub
        list1=new ArrayList<Button>();
        list1.add(but1_id);
        list1.add(but2_id);
        list1.add(but3_id);
    }
    private void getpagechange() {
        // TODO Auto-generated method stub
        page.setOnPageChangeListener(new OnPageChangeListener() {
            
            @Override
            public void onPageSelected(int arg0) {
                // TODO Auto-generated method stub

                
                for (int i = 0; i < list1.size(); i++) {
                    if(i==arg0){
                        list1.get(i).setTextColor(Color.RED);
                    }else{
                        list1.get(i).setTextColor(Color.BLACK);
                    }
                }
            }
            @Override
            public void onPageScrolled(int arg0, float arg1, int arg2) {
                // TODO Auto-generated method stub
            }
            
            @Override
            public void onPageScrollStateChanged(int arg0) {
                // TODO Auto-generated method stub
            }
        });
    }    
    @Override
    public void onClick(View arg0) {
        // TODO Auto-generated method stub
        switch (arg0.getId()) {
        case R.id.but1_id:

            page.setCurrentItem(0);
            break;
        case R.id.but2_id:
            page.setCurrentItem(1);
            break;
        case R.id.but3_id:
            page.setCurrentItem(2);
            break;
        default:
            break;
        }
    }

    
}



相关文章推荐

ImageLoader加载数据

  • 2013年10月16日 10:34
  • 27KB
  • 下载

ImageLoader

  • 2013年09月27日 15:04
  • 238KB
  • 下载

笔记---ImageLoader实现图片压缩,缓存

以下内容为博主阅读《Android开发艺术探索》所记代码以及知识点的梳理package com.example.utils; import java.io.BufferedInputStream; ...

ImageLoader

  • 2013年07月08日 14:33
  • 482KB
  • 下载

ImageLoader类库

  • 2015年10月20日 20:00
  • 439KB
  • 下载

Android imageloader加载网络,本地图片方式

imageloader加载图片路径选择 先初始化DisplayImageOptions defaultOptions = new DisplayImageOptions.Builder() ...

ImageLoader的代码实现和一个例子

  • 2016年01月07日 17:30
  • 7.94MB
  • 下载

android-----Volley框架使用ImageLoader加载图片源码分析

上一篇我们分析了Volley框架的源码,知道了使用Volley框架的三个步骤,如果你对此还不是很熟,希望能看看上一篇博文:android-----Volley框架源码分析,这篇我们将首先使用Volle...

volley 和imageloader 加载网络图片

  • 2015年12月19日 13:35
  • 8.88MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ImageLoader和MyAsyncTask
举报原因:
原因补充:

(最多只允许输入30个字)