异步加载
来源:互联网 发布:mac文件排序 编辑:程序博客网 时间:2024/05/28 19:23
package com.bwei.Zhou.Activity;
import android.content.Intent;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import com.bwei.Zhou.Bean.Bean;
import com.bwei.Zhou.Bean.MyEssay;
import com.bwei.Zhou.R;
import com.google.gson.Gson;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.List;
public class MyActivity extends AppCompatActivity {
private String path="http://v3.wufazhuce.com:8000/api/reading/index/?version=3.5.0&platform=android";
private List<MyEssay> list;
private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
listView= (ListView) findViewById(R.id.lv);
MyAsyacTask asyacTask=new MyAsyacTask();
asyacTask.execute(path);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent it=new Intent(MyActivity.this,MyLogin.class);
it.putExtra("name",list.get(position).getAuthor().get(0).getUser_name());
it.putExtra("summary",list.get(position).getAuthor().get(0).getSummary());
it.putExtra("desc",list.get(position).getAuthor().get(0).getDesc());
startActivity(it);
}
});
}
class MyAsyacTask extends AsyncTask<String,Integer,String>{
@Override
protected void onPreExecute() {
super.onPreExecute();
Toast.makeText(MyActivity.this,"正在加载",Toast.LENGTH_SHORT).show();
}
@Override
protected String doInBackground(String... params) {
try {
URL url=new URL(path);
HttpURLConnection connection = (HttpURLConnection)
url.openConnection();
connection.setReadTimeout(5000);
connection.setRequestMethod("GET");
if (connection.getResponseCode()==200){
InputStream inputStream = connection.getInputStream();
String josn = Stream(inputStream);
return josn;
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onProgressUpdate(Integer... values) {
super.onProgressUpdate(values);
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Gson gson=new Gson();
Bean bean = gson.fromJson(s, Bean.class);
Log.i("xxxx-1",bean.toString());
//请求数据 将数据赋给集合
list = bean.getData().getEssay();
MyAdapter adapter=new MyAdapter();
listView.setAdapter(adapter);
}
}
public String Stream(InputStream inputStream) throws IOException {
byte[] byt=new byte[1024];
int len=0;
ByteArrayOutputStream arrayOutputStream=new ByteArrayOutputStream();
while ((len=inputStream.read(byt))!=-1){
arrayOutputStream.write(byt,0,len);
}
return arrayOutputStream.toString("utf-8");
}
class MyAdapter extends BaseAdapter{
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView==null){
convertView=View.inflate(MyActivity.this,R.layout.listview,null);
holder=new ViewHolder();
holder.textView= (TextView) convertView.findViewById(R.id.te);
holder.textView2= (TextView) convertView.findViewById(R.id.word);
holder.textView3= (TextView) convertView.findViewById(R.id.xian);
convertView.setTag(holder);
}else {
holder= (ViewHolder) convertView.getTag();
}
holder.textView.setText(list.get(position).getHp_title());
holder.textView2.setText(list.get(position).getGuide_word());
holder.textView3.setText(list.get(position)+"");
return convertView;
}
}
class ViewHolder{
TextView textView,textView2,textView3;
}
}
import android.content.Intent;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.ListView;
import android.widget.TextView;
import android.widget.Toast;
import com.bwei.Zhou.Bean.Bean;
import com.bwei.Zhou.Bean.MyEssay;
import com.bwei.Zhou.R;
import com.google.gson.Gson;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.List;
public class MyActivity extends AppCompatActivity {
private String path="http://v3.wufazhuce.com:8000/api/reading/index/?version=3.5.0&platform=android";
private List<MyEssay> list;
private ListView listView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_my);
listView= (ListView) findViewById(R.id.lv);
MyAsyacTask asyacTask=new MyAsyacTask();
asyacTask.execute(path);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent it=new Intent(MyActivity.this,MyLogin.class);
it.putExtra("name",list.get(position).getAuthor().get(0).getUser_name());
it.putExtra("summary",list.get(position).getAuthor().get(0).getSummary());
it.putExtra("desc",list.get(position).getAuthor().get(0).getDesc());
startActivity(it);
}
});
}
class MyAsyacTask extends AsyncTask<String,Integer,String>{
@Override
protected void onPreExecute() {
super.onPreExecute();
Toast.makeText(MyActivity.this,"正在加载",Toast.LENGTH_SHORT).show();
}
@Override
protected String doInBackground(String... params) {
try {
URL url=new URL(path);
HttpURLConnection connection = (HttpURLConnection)
url.openConnection();
connection.setReadTimeout(5000);
connection.setRequestMethod("GET");
if (connection.getResponseCode()==200){
InputStream inputStream = connection.getInputStream();
String josn = Stream(inputStream);
return josn;
}
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
@Override
protected void onProgressUpdate(Integer... values) {
super.onProgressUpdate(values);
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Gson gson=new Gson();
Bean bean = gson.fromJson(s, Bean.class);
Log.i("xxxx-1",bean.toString());
//请求数据 将数据赋给集合
list = bean.getData().getEssay();
MyAdapter adapter=new MyAdapter();
listView.setAdapter(adapter);
}
}
public String Stream(InputStream inputStream) throws IOException {
byte[] byt=new byte[1024];
int len=0;
ByteArrayOutputStream arrayOutputStream=new ByteArrayOutputStream();
while ((len=inputStream.read(byt))!=-1){
arrayOutputStream.write(byt,0,len);
}
return arrayOutputStream.toString("utf-8");
}
class MyAdapter extends BaseAdapter{
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView==null){
convertView=View.inflate(MyActivity.this,R.layout.listview,null);
holder=new ViewHolder();
holder.textView= (TextView) convertView.findViewById(R.id.te);
holder.textView2= (TextView) convertView.findViewById(R.id.word);
holder.textView3= (TextView) convertView.findViewById(R.id.xian);
convertView.setTag(holder);
}else {
holder= (ViewHolder) convertView.getTag();
}
holder.textView.setText(list.get(position).getHp_title());
holder.textView2.setText(list.get(position).getGuide_word());
holder.textView3.setText(list.get(position)+"");
return convertView;
}
}
class ViewHolder{
TextView textView,textView2,textView3;
}
}
阅读全文
0 0
- 异步加载
- 异步加载
- 异步加载
- 异步加载
- 异步加载
- 异步加载
- 异步加载
- *【异步加载】
- 异步加载
- 异步加载
- 异步加载
- 异步加载
- 异步加载
- 异步加载
- 异步加载
- 异步加载
- 异步缓存,异步加载
- 页面同步加载&&异步加载
- CheckedTextView 使用
- 安装mysql5.7.17-二进制包形式
- eclipse UML插件
- 我眼中的光明·第八周·豫卦上六·三
- HDU 6098 Inversion(RMQ)
- 异步加载
- windows服务启动一个当前用户的进程
- 深入浅出es6之箭头函数
- 动态规划专题之最大连续子序列之和
- IP问问:为什么“我”总是“被”定在天安门?
- 注册谷歌账户Gmail提示:此电话号码无法用于进行验证的解決方法
- lintcode刷题——装最多水的容器
- 字符串匹配的KMP算法
- 这几天的烦恼