public class MainActivity extends Activity {
private ViewPager vp;
private List<Img> list=new ArrayList<Img>();
private String Urlpath="http://172.17.29.120/localuser/ljy/ndhx/pic.json";
private BitmapUtils bitmapUtils;
private Button bt;
private Handler handler=new Handler(){
private Img[] imgs;
public void dispatchMessage(Message msg) {
switch (msg.what) {
case 0:
String result=(String) msg.obj;
Gson gson = new Gson();
imgs = gson.fromJson(result, Img[].class);
vp.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
if(arg0==imgs.length-1){
bt.setVisibility(View.VISIBLE);
}else{
bt.setVisibility(View.INVISIBLE);
}
}
@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
}
});
vp.setAdapter(new PagerAdapter() {
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
return arg0==arg1;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return imgs.length;
}
@Override
public void destroyItem(ViewGroup container, int position,
Object object) {
container.removeView((View)object);
}
@Override
public Object instantiateItem(ViewGroup container,
int position) {
ImageView imageView = new ImageView(MainActivity.this);
bitmapUtils.display(imageView, "http://172.17.29.120/localuser/ljy/ndhx/"+imgs[position].src);
container.addView(imageView);
return imageView;
}
});
break;
}
};
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
vp = (ViewPager) findViewById(R.id.vp);
bt = (Button) findViewById(R.id.button1);
bitmapUtils = new BitmapUtils(MainActivity.this);
getResult();
}
private void getResult() {
new Thread(){
public void run() {
try {
HttpClient httpClient=new DefaultHttpClient();
HttpGet httpGet=new HttpGet(Urlpath);
HttpResponse response = httpClient.execute(httpGet);
StatusLine statusLine = response.getStatusLine();
int code = statusLine.getStatusCode();
if (code==200) {
HttpEntity httpEntity = response.getEntity();
String result = EntityUtils.toString(httpEntity);
Message message = new Message();
message.what=0;
message.obj=result;
handler.sendMessage(message);
}
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
};
}.start();
}
}
//这里是PageAdapter
public class MyAdapter extends BaseAdapter{
private Img[] list;
private Context context;
private BitmapUtils bitmapUtils;
public MyAdapter(Img[] list, Context context) {
super();
this.list = list;
this.context = context;
bitmapUtils = new BitmapUtils(context);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.length;
}
@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}
@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view=View.inflate(context, R.layout.item, null);
ImageView img = (ImageView) view.findViewById(R.id.imageView1);
bitmapUtils.display(img, "http://172.17.29.120/localuser/ljy/ndhx/"+list[position]);
return view;
}
}
ViewPage
最新推荐文章于 2020-03-03 11:38:12 发布