package com.atguigu.mobileplayer1020.fragment; import android.content.Intent; import android.util.Log; import android.view.View; import android.widget.AdapterView; import android.widget.ListView; import android.widget.ProgressBar; import android.widget.TextView; import com.atguigu.mobileplayer1020.R; import com.atguigu.mobileplayer1020.activity.PicassoSampleActivity; import com.atguigu.mobileplayer1020.adapter.NetAudioFragmentAdapter; import com.atguigu.mobileplayer1020.base.BaseFragment; import com.atguigu.mobileplayer1020.bean.NetAudioBean; import com.atguigu.mobileplayer1020.utils.Constant; import com.google.gson.Gson; import org.xutils.common.Callback; import org.xutils.http.RequestParams; import org.xutils.x; import java.util.List; import butterknife.ButterKnife; import butterknife.InjectView; /** * 作者:尚硅谷-杨光福 on 2017/1/6 16:46 * 微信:yangguangfu520 * QQ号:541433511 * 作用:网络音频 */ public class NetAudioFragment extends BaseFragment { @InjectView(R.id.listview) ListView listview; @InjectView(R.id.progressbar) ProgressBar progressbar; @InjectView(R.id.tv_nomedia) TextView tvNomedia; /** * 数据集合 */ private List<NetAudioBean.ListBean> listDatas; private NetAudioFragmentAdapter myAdapter; @Override public View initView() { Log.e("TAG", "网络音频ui初始化了。。"); View view = View.inflate(mContext, R.layout.fragment_net_audio, null); ButterKnife.inject(this, view); //设置ListView的item的点击事件 //设置点击事件 listview.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { NetAudioBean.ListBean listEntity = listDatas.get(position); if(listEntity !=null ){ //3.传递视频列表 Intent intent = new Intent(mContext,PicassoSampleActivity.class); if(listEntity.getType().equals("gif")){ String url = listEntity.getGif().getImages().get(0); intent.putExtra("url",url); mContext.startActivity(intent); }else if(listEntity.getType().equals("image")){ String url = listEntity.getImage().getThumbnail_small().get(0); intent.putExtra("url",url); mContext.startActivity(intent); } } } }); return view; } @Override public void initData() { super.initData(); Log.e("TAG", "网络音频数据初始化了。。"); // tvNomedia.setVisibility(View.VISIBLE); // tvNomedia.setText("hh"); getDataFromNet(); } @Override public void onRefrshData() { super.onRefrshData(); // Log.e("TAG","onHiddenChanged。。"+this.toString()); } private void getDataFromNet() { RequestParams params = new RequestParams(Constant.NET_AUDIO); x.http().get(params, new Callback.CommonCallback<String>() { @Override public void onSuccess(String result) { Log.e("TAG", "网络音乐请求成功" + result); processData(result); } @Override public void onError(Throwable ex, boolean isOnCallback) { Log.e("TAG", "网络音乐请求失败" + ex.getMessage()); } @Override public void onCancelled(CancelledException cex) { } @Override public void onFinished() { } }); } private void processData(String json) { NetAudioBean netAudioBean = new Gson().fromJson(json, NetAudioBean.class); listDatas = netAudioBean.getList(); Log.e("TAG","解决成功=="+listDatas.get(0).getText()); if(listDatas != null && listDatas.size() >0){ //有视频 tvNomedia.setVisibility(View.GONE); //设置适配器 myAdapter = new NetAudioFragmentAdapter(mContext,listDatas); listview.setAdapter(myAdapter); }else{ //没有视频 tvNomedia.setVisibility(View.VISIBLE); } progressbar.setVisibility(View.GONE); } @Override public void onDestroyView() { super.onDestroyView(); ButterKnife.reset(this); } }