MainaActivity
import android.content.Intent;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.TextView;
import com.google.gson.Gson;
import com.nostra13.universalimageloader.core.ImageLoader;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.util.List;
public class MainActivity extends AppCompatActivity {
private ListView listView;
private Button bt;
private Gson gson;
private List<Bean.ResultBean.DataBean> list;
String path = "http://v.juhe.cn/toutiao/index?type=top&key=597b4f9dcb50e051fd725a9ec54d6653";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
gson = new Gson();
listView = (ListView) findViewById(R.id.listview);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
if (list != null) {
Intent intent = new Intent(MainActivity.this, Web.class);
intent.putExtra("url",list.get(i).getUrl());
startActivity(intent);
}
}
});
bt = (Button) findViewById(R.id.bt);
bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
new My().execute("");
}
});
}
class My extends AsyncTask<String, Integer, String> {
@Override
protected String doInBackground(String... strings) {
String string = "";
try {
URL url = new URL(path);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setConnectTimeout(5000);
con.setReadTimeout(5000);
int code = con.getResponseCode();
if (code == 200) {
InputStream is = con.getInputStream();
byte[] b = new byte[1024];
int length = 0;
while ((length = is.read(b)) != -1) {
String str = new String(b, 0, length);
string += str;
}
}
} catch (Exception e) {
e.printStackTrace();
}
return string;
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
Bean fromJson = gson.fromJson(s, Bean.class);
list = fromJson.getResult().getData();
MyAdapter adapter = new MyAdapter();
listView.setAdapter(adapter);
}
}
class MyAdapter extends BaseAdapter {
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int i) {
return list.get(i);
}
@Override
public long getItemId(int i) {
return i;
}
@Override
public View getView(int i, View view, ViewGroup viewGroup) {
Hander hander = null;
if (view == null) {
view = View.inflate(MainActivity.this, R.layout.item, null);
hander = new Hander();
hander.te1 = view.findViewById(R.id.te1);
hander.te2 = view.findViewById(R.id.te2);
hander.te3 = view.findViewById(R.id.te3);
hander.img1 = view.findViewById(R.id.img1);
hander.img2 = view.findViewById(R.id.img2);
hander.img3 = view.findViewById(R.id.img3);
view.setTag(hander);
} else {
hander = (Hander) view.getTag();
}
hander.te1.setText(list.get(i).getTitle());
hander.te2.setText(list.get(i).getAuthor_name());
hander.te3.setText(list.get(i).getDate());
String pic_s = list.get(i).getThumbnail_pic_s();
ImageLoader il = ImageLoader.getInstance();
il.displayImage(pic_s, hander.img1);
String pic_s2 = list.get(i).getThumbnail_pic_s02();
ImageLoader il2 = ImageLoader.getInstance();
il2.displayImage(pic_s2, hander.img2);
String pic_s3 = list.get(i).getThumbnail_pic_s03();
ImageLoader il3 = ImageLoader.getInstance();
il3.displayImage(pic_s3, hander.img3);
return view;
}
}
class Hander {
TextView te1, te2, te3;
ImageView img1, img2, img3;
}
}
Web
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
/**
* Created by lenovo on 2017/09/01.
*/
public class Web extends Activity {
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.web);
webView = findViewById(R.id.webview);
Intent intent = getIntent();
String url = intent.getStringExtra("url");
webView.loadUrl(url);
webView.setWebViewClient(new WebViewClient());
WebSettings settings = webView.getSettings();
settings.setJavaScriptEnabled(true);
settings.setJavaScriptCanOpenWindowsAutomatically(true);
}
}
Myapp
import android.app.Application;
import com.nostra13.universalimageloader.core.ImageLoader;
import com.nostra13.universalimageloader.core.ImageLoaderConfiguration;
/**
* Created by lenovo on 2017/09/01.
*/
public class Myapp extends Application {
@Override
public void onCreate() {
super.onCreate();
ImageLoaderConfiguration aDefault = ImageLoaderConfiguration.createDefault(getApplicationContext());
ImageLoader.getInstance().init(aDefault);
}
}
AndroidManifest
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
>
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:name=".Myapp"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Web"/>
</application>
</manifest>