xutils获取动态图片和进度条对话框gson解析字符串

权限

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

activity

public class MainActivity extends AppCompatActivity implements AdapterView.OnItemClickListener {
    private ProgressDialog pd;//对话框
    private ListView lsitView;
    private List<Move.InfoListBean> data;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initView();
    }

    private void initView() {
        lsitView = (ListView) findViewById(R.id.lsitView);
        data = new ArrayList<>();
        pd = new ProgressDialog(this);
        pd.setIcon(R.mipmap.ic_launcher);
        pd.setTitle("提示!");
        pd.setMessage("讯号传入中。。。");
        pd.show();
        RequestParams params = new RequestParams("http://www.moviebase.cn/uread/app/recommend/recommend?platform=2&deviceId=A8C73E0D1ED1A2BED491C9238C8FD8A0&pageContext=1&appVersion=1.7.0");
        x.http().get(params, new Callback.CommonCallback<String>() {
            @Override
            public void onSuccess(String s) {
                Log.d("zdl",s);

                Gson gson = new Gson();
                Move move = gson.fromJson(s,Move.class);
                data = move.getInfoList();
                MyAdapter myadapter = new MyAdapter(MainActivity.this,data);
                lsitView.setAdapter(myadapter);
                pd.dismiss();
            }

            @Override
            public void onError(Throwable throwable, boolean b) {

            }

            @Override
            public void onCancelled(CancelledException e) {

            }

            @Override
            public void onFinished() {

            }
        });
        lsitView.setOnItemClickListener(this);
    }

    @Override
    public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("详细信息");
        Move.InfoListBean move = data.get(i);
        ImageOptions options = new ImageOptions.Builder()
                .setFailureDrawableId(R.mipmap.ic_launcher)
                .setLoadingDrawableId(R.mipmap.ic_launcher)
                .setIgnoreGif(false)
                .setUseMemCache(true)
                .build();
        View view1 = getLayoutInflater().inflate(R.layout.item_lv,null);
        TextView textView = view1.findViewById(R.id.textView);
        textView.setText(move.getObject().getTitle());
        ImageView imageView = view1.findViewById(R.id.imageView);
        x.image().bind(imageView,move.getObject().getImgUrl(),options);
        builder.setMessage(move.getObject().getTitle());
        builder.setView(view1);
        builder.show();
    }
}

适配器

class MyAdapter extends BaseAdapter{
    private Context context;
    private List<Move.InfoListBean> list;
    private LayoutInflater layoutInflater;

    public MyAdapter(Context context, List<Move.InfoListBean> list) {
        this.context = context;
        this.list = list;
        layoutInflater = LayoutInflater.from(context);
    }

    @Override
    public int getCount() {
        return list.size();
    }

    @Override
    public Object getItem(int i) {
        return list.get(i);
    }

    @Override
    public long getItemId(int i) {
        return i;
    }

    @Override
    public View getView(int i, View view, ViewGroup viewGroup) {
        MyView myView;
        if (view == null){
            view = layoutInflater.inflate(R.layout.item_lv,null);
            myView = new MyView();
            myView.textView = view.findViewById(R.id.textView);
            myView.imageView = view.findViewById(R.id.imageView);
            view.setTag(myView);
        }else{
            myView = (MyView) view.getTag();
        }
        Move.InfoListBean move = list.get(i);
        Move.InfoListBean.ObjectBean object = move.getObject();
        myView.textView.setText(object.getTitle());
        ImageOptions options = new ImageOptions.Builder()
                .setFailureDrawableId(R.mipmap.ic_launcher)
                .setLoadingDrawableId(R.mipmap.ic_launcher)
                .setIgnoreGif(false)
                .setUseMemCache(true)
                .build();
        x.image().bind(myView.imageView,object.getImgUrl(),options);

        return view;
    }
    class MyView{
        TextView textView;
        ImageView imageView;
    }

}


TabLayout的变化

 private TabLayout mTb;

//为TabLayout 设置监听器
        setTitle("头条");//设置Activity 标题的方法
        mTb.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
            @Override
            public void onTabSelected(TabLayout.Tab tab) {
                String tabName = tab.getText().toString();
                setTitle(tabName);
            }
            @Override
            public void onTabUnselected(TabLayout.Tab tab) {}
            @Override
            public void onTabReselected(TabLayout.Tab tab) {}
        });


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值