Android仿微信发朋友圈浏览图片效果

2019-12-10 19:12:34王振洲
易采站长站为您分析Android仿微信发朋友圈浏览图片效果的相关资料,需要的朋友可以参考下  

先看一下效果吧:

Android仿微信发朋友圈浏览图片效果

下面就来说一下具体怎么实现的:

实现思路

  • 1.首先我们要获取数据源,数据源就是我们的每条说说(包括姓名、标题、图片数组)
  • 2.自定义适配器(ListView嵌套着GridView)
  • 3.图片点击浏览图片(Fragment+ViewPager)

    具体实现

    1.初始化数据源,设置适配器,看一下代码:

    public class MyActivity extends Activity {
      /*图片显示列表*/
      private ListView listView;
      /*图片URL数组*/
      private List<ContentBean> contentBeans;
      /*说说适配器*/
      private MyAdapter adapter;
    
      /**
       * Called when the activity is first created.
       */
      @Override
      public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        initData();
        initViews();
      }
    
      /**
       * 初始化数据
       */
      private void initData(){
        contentBeans = new ArrayList<ContentBean>();
        ArrayList<String> imgUrls1 = new ArrayList<String>();
        imgUrls1.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        ContentBean cb1 = new ContentBean(1,"java","Sun Microsystems",imgUrls1);
        contentBeans.add(cb1);
    
        ArrayList<String> imgUrls2 = new ArrayList<String>();
        imgUrls2.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls2.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls2.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        ContentBean cb2 = new ContentBean(2,"OC","Stepstone",imgUrls2);
        contentBeans.add(cb2);
    
        ArrayList<String> imgUrls3 = new ArrayList<String>();
        imgUrls3.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls3.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls3.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls3.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls3.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls3.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls3.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls3.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        imgUrls3.add("http://www.easck.com/110H2E40-6.jpg?attname=&e=1448288962&token=KDsCqUAWz3P-YT6In6oPnT56Eh2cig4zgQd12SJ_:AlTjfYD9SBFOdB4jmmZuKXAMOp8");
        ContentBean cb3 = new ContentBean(3,"python","Guido van Rossum",imgUrls3);
        contentBeans.add(cb3);
      }
    
    
      private void initViews(){
        listView = (ListView) findViewById(R.id.lv_my);
        adapter = new MyAdapter(MyActivity.this,contentBeans);
        listView.setAdapter(adapter);
      }
    }