比较简单的轮播图(第三方)

来源:互联网 发布:淘宝网登陆入口 编辑:程序博客网 时间:2024/06/07 02:01

//效果图









//相信大家都做过轮播图,有很多方法,但有些都大同小异,有点麻烦,传统点的还需要写 适配器,调用ImageLoder  ,马上我要教大家一种简单又酷炫的轮播图。

//首先倒包

compile 'com.squareup.picasso:picasso:2.3.2'compile 'com.nineoldandroids:library:2.4.0'compile 'com.daimajia.slider:library:1.1.5@aar'

//再添加权限

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />


//布局

<com.daimajia.slider.library.SliderLayout    android:id="@+id/slider"    android:layout_width="match_parent"    android:layout_height="200dp"    />

//解析有许多  但我用的是Okhttp  相信大家也用过   

//为了让大家跟仔细的看到我的步骤   我就直接将Activity给粘了过来

package com.bwie.luobo;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.util.Log;import com.daimajia.slider.library.SliderLayout;import com.daimajia.slider.library.SliderTypes.TextSliderView;import org.json.JSONArray;import org.json.JSONObject;import java.io.IOException;import java.util.ArrayList;import java.util.List;import okhttp3.Request;public class MainActivity extends AppCompatActivity {    private SliderLayout sliderShow;    private List<Be> list=new ArrayList<Be>();    private Be bean;    private String path="http://m.yunifang.com/yunifang/mobile/home?random=59676&encode=62d458fefce9c740359873cc19b05188";    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        init();        initData();    }//找控件    private void init() {        sliderShow = (SliderLayout) findViewById(R.id.slider);    }    //okhttp解析数据    protected void initData()    {        OkHttp.getAsync(path, new OkHttp.DataCallBack() {            @Override            public void requestFailure(Request request, IOException e) {            }            @Override            public void requestSuccess(String result) throws Exception {                List<Be> lists=new ArrayList<Be>();                JSONObject object=new JSONObject(result);                JSONObject data=object.getJSONObject("data");                JSONArray ad1=data.getJSONArray("ad1");                Log.i("----1-----",ad1+" ");                for (int i = 0; i < ad1.length(); i++) {                    JSONObject o = ad1.getJSONObject(i);                    String image=o.getString("image");                    bean=new Be(image);                    lists.add(bean);                }                list.addAll(lists);//主要步骤                for (int i = 0; i < list.size(); i++) {                        TextSliderView textSliderView = new TextSliderView(MainActivity.this);                        textSliderView.image(list.get(i).getImage());
//          此控件的一个点击事件final int i2=i;textSliderView.setOnSliderClickListener(new BaseSliderView.OnSliderClickListener() {    @Override    public void onSliderClick(BaseSliderView slider) {        Intent intent=new Intent(MainActivity.this, WebActivity.class);        intent.putExtra("webviewUrl", list.get(i2).getAd_type_dynamic_data());        startActivity(intent);    }});

                        sliderShow.addSlider(textSliderView);                        //设置小圆点                                                小圆点的位置                        sliderShow.setPresetIndicator(SliderLayout.PresetIndicators.Right_Bottom);                        //轮播图片的                                             效果类型                        sliderShow.setPresetTransformer(SliderLayout.Transformer.Background2Foreground);                        sliderShow.setDuration(3000);                }            }        });    }}






0 0
原创粉丝点击