AsyncTask 這一套(網(wǎng)絡(luò)請求,gson解析,跳轉(zhuǎn))

//創(chuàng)建AsyncTask對象

AsyncTaskasyncTask?=?new?AsyncTask()?{????????????@Override

protected?void?onPreExecute()?{

super.onPreExecute();

}

//子線程運(yùn)行的方法

@Override

protected?String?doInBackground(Void...?params)?{

//用httpclient請求數(shù)據(jù)

DefaultHttpClient?defaultHttpClient?=?new?DefaultHttpClient();

HttpGet?httpGet?=?new?HttpGet(path);

try?{

HttpResponse?execute?=?defaultHttpClient.execute(httpGet);

StatusLine?statusLine?=?execute.getStatusLine();

int?statusCode?=?statusLine.getStatusCode();

if?(statusCode?==?200)?{

HttpEntity?entity?=?execute.getEntity();

InputStream?content?=?entity.getContent();

ByteArrayOutputStream?byteArrayOutputStream?=?new?ByteArrayOutputStream();????????????????????????int?len?=?0;

byte[]?buffer?=?new?byte[1024];

while?((len?=?content.read(buffer))?!=?-1)?{

byteArrayOutputStream.write(buffer,?0,?len);

}

//給主線程返回請求的數(shù)據(jù)

return?byteArrayOutputStream.toString();

}

}?catch?(IOException?e)?{

e.printStackTrace();

}????????????????return?null;

}

//主線程運(yùn)行的方法

@Override

protected?void?onPostExecute(String?s)?{

super.onPostExecute(s);

//創(chuàng)建list集合

list?=?new?ArrayList();

//gson解析

Gson?gson?=?new?Gson();

final?myBean?myBean?=?gson.fromJson(s,?myBean.class);

//?把解析出來的內(nèi)容存入list集合

list?=?myBean.data;

//找控件

ListView?listview?=?(ListView)?findViewById(R.id.listview);

//創(chuàng)建自定義適配器

myBaseAdapter?adpter?=?new?myBaseAdapter(list,?MainActivity.this);

//設(shè)置適配器

listview.setAdapter(adpter);

//設(shè)置item的條目點(diǎn)擊事件

listview.setOnItemClickListener(new?AdapterView.OnItemClickListener()?{

@Override

public?void?onItemClick(AdapterView?parent,?View?view,?int?position,?long?id)?{

//跳轉(zhuǎn)到第二個(gè)頁面

Intent?intent?=?new?Intent(MainActivity.this,?SecondActivity.class);

//intent傳值

intent.putExtra("IMAGEURL",?list.get(position).IMAGEURL);

intent.putExtra("TITLE",?list.get(position).TITLE);

intent.putExtra("FROMNAME",?list.get(position).FROMNAME);

intent.putExtra("SHOWTIME",?list.get(position).SHOWTIME);

intent.putExtra("SUBTITLE",list.get(position).SUBTITLE);

startActivity(intent);

}

});

}

};

asyncTask.execute();

}

}

//////////////////////////////////////////////youhua

if?(convertView?==?null)?{

holder?=?new?viewHolder();

convertView?=?convertView.inflate(context,?R.layout.item,?null);

holder.imageView?=?(ImageView)?convertView.findViewById(R.id.imageview);

holder.title?=?(TextView)?convertView.findViewById(R.id.TITLE);

holder.FROMNAME?=?(TextView)?convertView.findViewById(R.id.FROMNAME);

holder.SHOWTIME?=?(TextView)?convertView.findViewById(R.id.SHOWTIME);

convertView.setTag(holder);

}?else?{

holder?=?(viewHolder)?convertView.getTag();

}

//這步驟是用imageloder加載圖片的

http://www.itdecent.cn/p/a8cbb228fb83

這個(gè)網(wǎng)址里有

DisplayImageOptions?displayImageOptions?=?new?DisplayImageOptions.Builder()

.cacheInMemory(true)

.cacheOnDisk(true)??.build();

ImageLoaderConfiguration?config?=?new?ImageLoaderConfiguration.Builder(context)

.defaultDisplayImageOptions(displayImageOptions)

.build();

ImageLoader.getInstance().init(config);

ImageLoader.getInstance().displayImage(list.get(position).IMAGEURL,?holder.imageView);

holder.title.setText(list.get(position).TITLE);

holder.FROMNAME.setText(list.get(position).FROMNAME);

holder.SHOWTIME.setText(list.get(position).SHOWTIME);

return?convertView;

}

解析驚悚?ViewLoader


compile?'com.nostra13.universalimageloader:universal-image-loader:1.9.5'

//這步驟是用imageloder加載圖片的

http://www.itdecent.cn/p/a8cbb228fb83

這個(gè)網(wǎng)址里有

DisplayImageOptions?displayImageOptions?=?new?DisplayImageOptions.Builder()

.cacheInMemory(true)

.cacheOnDisk(true)??.build();

ImageLoaderConfiguration?config?=?new?ImageLoaderConfiguration.Builder(context)

.defaultDisplayImageOptions(displayImageOptions)

.build();

ImageLoader.getInstance().init(config);

ImageLoader.getInstance().displayImage(list.get(position).IMAGEURL,?holder.imageView);

/////


radioGroup.setOnCheckedChangeListener(new?OnCheckedChangeListener()?{

@Override

public?void?onCheckedChanged(RadioGroup?group,?int?checkedId)?{

//?TODO?Auto-generated?method?stub

switch?(checkedId)?{

case?R.id.but01:

//創(chuàng)建FragmentManager管理者

FragmentManager?fragmentManager=getSupportFragmentManager();

//通過FragmentManager開啟一個(gè)事務(wù)

FragmentTransaction?transaction=fragmentManager.beginTransaction();

//加載fragment??arg0??占位的控件??第二個(gè)參數(shù)是加載的Fragment

transaction.replace(R.id.fragment,?new?Fragment01());

//提交

transaction.commit();

break;

case?R.id.but02:

FragmentManager?fragmentManager2=getSupportFragmentManager();

FragmentTransaction?transaction2=fragmentManager2.beginTransaction();

transaction2.replace(R.id.fragment,?new?Fragment02());

transaction2.commit();

break;

case?R.id.but03:

FragmentManager?fragmentManager3=getSupportFragmentManager();

FragmentTransaction?transaction3=fragmentManager3.beginTransaction();

transaction3.replace(R.id.fragment,?new?Fragment03());

transaction3.commit();

break;

default:

break;

}

}

});

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容