package com.liuguilin.lovewallpaper.activity; /* * 项目名: LoveWallpaper * 包名: com.liuguilin.lovewallpaper.activity * 文件名: SpecialActivity * 创建者: LGL * 创建时间: 2017/1/10 13:45 * 描述: 轮播详情 */ import android.content.Intent; import android.os.Bundle; import android.text.TextUtils; import android.view.View; import android.widget.AdapterView; import android.widget.GridView; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; import com.google.gson.Gson; import com.kymjs.rxvolley.RxVolley; import com.kymjs.rxvolley.client.HttpCallback; import com.kymjs.rxvolley.http.VolleyError; import com.liuguilin.lovewallpaper.R; import com.liuguilin.lovewallpaper.adapter.SpecialGridAdapter; import com.liuguilin.lovewallpaper.model.SpecialApiModel; import com.liuguilin.lovewallpaper.model.SpecialGridModel; import com.liuguilin.lovewallpaper.utils.GlideUtils; import com.liuguilin.lovewallpaper.utils.L; import java.util.ArrayList; import java.util.List; public class SpecialActivity extends BaseActivity { private String name; private String desc; private String icon; private String url; private ImageView iv_icon; private TextView tv_desc; private GridView mGridView; private LinearLayout ll_special_title; private SpecialGridAdapter mSpecialGridAdapter; private List<SpecialGridModel> mList = new ArrayList<>(); private ArrayList<String> mListBigUrl = new ArrayList<>(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_special); initView(); } private void initView() { iv_icon = (ImageView) findViewById(R.id.iv_icon); tv_desc = (TextView) findViewById(R.id.tv_desc); mGridView = (GridView) findViewById(R.id.mGridView); ll_special_title = (LinearLayout) findViewById(R.id.ll_special_title); final Intent intent = getIntent(); name = intent.getStringExtra("name"); desc = intent.getStringExtra("desc"); icon = intent.getStringExtra("icon"); url = intent.getStringExtra("url"); //设置标题 if (!TextUtils.isEmpty(name)) { getSupportActionBar().setTitle(name); } if (!TextUtils.isEmpty(desc)) { tv_desc.setText(desc); ll_special_title.setVisibility(View.VISIBLE); } if (!TextUtils.isEmpty(icon)) { GlideUtils.loadImageCrop(this, icon, iv_icon); } if (!TextUtils.isEmpty(url)) { RxVolley.get(url, new HttpCallback() { @Override public void onSuccess(String t) { parsingJson(t); } @Override public void onFailure(VolleyError error) { L.i(error.toString()); } }); } mGridView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) { Intent intent = new Intent(SpecialActivity.this, GalleryActivity.class); intent.putExtra("position", i); intent.putStringArrayListExtra("bigUrl", mListBigUrl); startActivity(intent); } }); } //解析 private void parsingJson(String t) { Gson gson = new Gson(); SpecialApiModel model = gson.fromJson(t, SpecialApiModel.class); for (int i = 0; i < model.getData().size(); i++) { SpecialGridModel models = new SpecialGridModel(); models.setKey(model.getData().get(i).getKey()); models.setBig(model.getData().get(i).getBig()); mListBigUrl.add(model.getData().get(i).getBig()); models.setDown(model.getData().get(i).getDown()); models.setDown_stat(model.getData().get(i).getDown_stat()); models.setSmall(model.getData().get(i).getSmall()); mList.add(models); } mSpecialGridAdapter = new SpecialGridAdapter(this, mList); mGridView.setAdapter(mSpecialGridAdapter); } }