activity_main:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <com.youth.banner.Banner android:id="@+id/ban" android:layout_width="match_parent" android:layout_height="200dp" /> <ListView android:id="@+id/lv" android:layout_width="wrap_content" android:layout_height="0dp" android:layout_weight="1"></ListView> </LinearLayout>
item:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal"> <ImageView android:id="@+id/lv_img" android:layout_width="100dp" android:layout_height="100dp" android:src="@mipmap/ic_launcher" /> <LinearLayout android:layout_width="match_parent" android:layout_height="100dp" android:orientation="vertical"> <TextView android:text="TextView" android:layout_width="match_parent" android:layout_height="50dp" android:id="@+id/tv1" /> <TextView android:text="TextView" android:layout_width="match_parent" android:layout_height="50dp" android:id="@+id/tv2" /> </LinearLayout></LinearLayout>
MainActivity
public class MainActivity extends AppCompatActivity { public String urlString = "http://api.expoon.com/AppNews/getNewsList/type/1/p/1"; List<String> list = new ArrayList<>(); private static final String urlBitmap[] = new String[]{ "https://img-my.csdn.net/uploads/201407/26/1406383265_8550.jpg", "https://zxpic.gtimg.com/infonew/0/wechat_pics_-59010779.jpg/640", "https://zxpic.gtimg.com/infonew/0/wechat_pics_-59031506.jpg/640", "http://f.expoon.com/sub/news/2016/01/21/887844_230x162_0.jpg" }; private ListView lv; private List<JavaBean.DataBean> mlist; private Banner banner; private MyAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); lv = (ListView) findViewById(R.id.lv); banner = (Banner) findViewById(R.id.ban); //初始化图片集合 for (int i = 0; i < urlBitmap.length ; i++) { list.add(urlBitmap[i]); } //设置加载样式 banner.setIndicatorGravity(Banner.CENTER); banner.setBannerStyle(Banner.CIRCLE_INDICATOR_TITLE); //是否自动轮播 banner.isAutoPlay(true); //设置轮播的时间间隔 banner.setDelayTime(2000); //设置加载的图片,解析出来的url banner.setImages(list); mlist = new ArrayList<>(); //listview设置适配器 adapter = new MyAdapter(MainActivity.this, mlist); lv.setAdapter(adapter); new MyAsyncTask().execute(urlString); } private class MyAsyncTask extends AsyncTask<String,Void,String>{ @Override protected String doInBackground(String... strings) { String str = strings[0]; String netJson = NetUtil.getNetJson(str); return netJson; } @Override protected void onPostExecute(String s) { super.onPostExecute(s); Gson gson = new Gson(); JavaBean javaBean = gson.fromJson(s, JavaBean.class); List<JavaBean.DataBean> data = javaBean.getData(); mlist.addAll(data); adapter.notifyDataSetChanged(); } } class MyAdapter extends BaseAdapter{ Context context; List<JavaBean.DataBean> list; public MyAdapter(Context context, List<JavaBean.DataBean> list) { this.context = context; this.list = list; } @Override public int getCount() { return mlist.size(); } @Override public Object getItem(int i) { return null; } @Override public long getItemId(int i) { return 0; } @Override public View getView(int i, View view, ViewGroup viewGroup) { ViewHoloder viewHoloder = null; if (view == null) { viewHoloder = new ViewHoloder(); view = View.inflate(MainActivity.this, R.layout.item, null); viewHoloder.tv1 = (TextView) view.findViewById(R.id.tv1); viewHoloder.tv2 = (TextView) view.findViewById(R.id.tv2); viewHoloder.lv_img = (ImageView) view.findViewById(R.id.lv_img); view.setTag(viewHoloder); } else { viewHoloder = (ViewHoloder) view.getTag(); } JavaBean.DataBean data = list.get(i); viewHoloder.tv1.setText(data.getNews_title()); viewHoloder.tv2.setText(data.getNews_summary()); // Glide.with(context).load(data.get).into(viewHoloder.images); ImageLoader instance = ImageLoader.getInstance(); instance.displayImage(mlist.get(i).getPic_url(),viewHoloder.lv_img); return view; } } class ViewHoloder { TextView tv1; TextView tv2; ImageView lv_img; } }