跳转到详情页的步骤

//1  主页面

package com.bwei.www.fjd.fragment;

import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;

import com.bwei.www.fjd.R;
import com.bwei.www.fjd.activity.CloseActivity;
import com.bwei.www.fjd.activity.LoginActivity;
import com.bwei.www.fjd.activity.WebViewActivity;
import com.bwei.www.fjd.adapter.TuiAdapter;
import com.bwei.www.fjd.bean.TuiBean;
import com.bwei.www.fjd.presenter.TuiPresenter;
import com.bwei.www.fjd.view.ITuiView;
import com.facebook.drawee.view.SimpleDraweeView;

import java.util.ArrayList;
import java.util.List;

import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import butterknife.Unbinder;

/**
 * Created by asus on 2018/11/7.
 */

public class MineFragment extends Fragment implements ITuiView {

    @BindView(R.id.img_head)
    SimpleDraweeView imgHead;
    @BindView(R.id.txt_head)
    TextView txtHead;
    Unbinder unbinder;
    @BindView(R.id.tui)
    RecyclerView tui;
    private List<TuiBean.DataBean.TuijianBean.ListBeanX> list;
    private TuiAdapter adapter;
    private TuiPresenter tuiPresenter;
    private SharedPreferences sp;
    private String login;
    private String username;
    private Intent intent;
    @Nullable
    @Override
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        View v = inflater.inflate(R.layout.item_mine, container, false);
        unbinder = ButterKnife.bind(this, v);
        return v;
    }

    @Override
    public void onActivityCreated(@Nullable Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);

        tuiPresenter = new TuiPresenter();
        tuiPresenter.attach(this);
        GridLayoutManager manager = new GridLayoutManager(getActivity(),2);
        tui.setLayoutManager(manager);
        tuiPresenter.getTui();

        list = new ArrayList<>();
        adapter = new TuiAdapter(list,getContext());
        tui.setAdapter(adapter);
        //点击条目跳转详情页面
        adapter.setOnItemClickListener(new TuiAdapter.OnItemClickListener() {
            @Override
            public void OnClick(int position, View view) {
                TuiBean.DataBean.TuijianBean.ListBeanX listBeanX = list.get(position);
                Intent intent = new Intent(getActivity(), WebViewActivity.class);
                //传对应的url和pid
                intent.putExtra("url", listBeanX.getDetailUrl());
                //intent.putExtra("pid", listBeanX.getPid());
                startActivity(intent);

            }
        });

    }

    @Override
    public void onResume() {
        super.onResume();
        sp = getActivity().getSharedPreferences("config", Context.MODE_PRIVATE);
        username = sp.getString("username", null);
        login = sp.getString("login", "");
        if (login.equals("true")) {
            txtHead.setText(username);
        } else {
            txtHead.setText("登录/注册>");
        }
    }
//    @OnClick(R.id.txt_head)
//    public void onViewClicked(View view) {
//        switch (view.getId()){
//            case R.id.txt_head:
//                if (login.equals("true")){
//                    intent = new Intent(getContext(), CloseActivity.class);
//                    startActivity(intent);
//                }else {
//                    intent = new Intent(getContext(), LoginActivity.class);
//                    startActivity(intent);
//                }
//
//                break;
//        }
//    }
    @OnClick({R.id.img_head, R.id.txt_head})
    public void onViewClicked(View view) {
        switch (view.getId()) {
            case R.id.img_head:
                Intent intent = new Intent(getContext(), LoginActivity.class);
                startActivity(intent);

                break;
            case R.id.txt_head:
                Intent intent2 = new Intent(getContext(), CloseActivity.class);
                startActivity(intent2);
                break;
        }
    }
    @Override
    public void getTui(TuiBean tuiBean) {
        list.clear();
        list.addAll(tuiBean.getData().getTuijian().getList());
        adapter.notifyDataSetChanged();

    }

    @Override
    public void failed(Throwable t) {
        Toast.makeText(getContext(),""+t.getMessage(),Toast.LENGTH_LONG).show();
    }
    @Override
    public void onDestroyView() {
        super.onDestroyView();
        unbinder.unbind();
        if (tuiPresenter!= null){
            tuiPresenter.detach();
        }
    }
}

// 2 适配器写一个接口回调

package com.bwei.www.fjd.adapter;

import android.content.Context;
import android.net.Uri;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.TextView;

import com.bumptech.glide.Glide;
import com.bwei.www.fjd.HttpUtils.ImgProcess;
import com.bwei.www.fjd.R;
import com.bwei.www.fjd.bean.TuiBean;

import java.util.List;

import butterknife.BindView;
import butterknife.ButterKnife;

/**
 * Created by asus on 2018/11/13.
 */

public class TuiAdapter extends RecyclerView.Adapter<TuiAdapter.ViewHolder> {

    //接口回调
    public interface OnItemClickListener{
        void OnClick(int position,View view);
    }
    private OnItemClickListener listener;

    public void setOnItemClickListener(OnItemClickListener listener){
        this.listener = listener;
    }
    private List<TuiBean.DataBean.TuijianBean.ListBeanX> list;
    private Context context;

    public TuiAdapter(List<TuiBean.DataBean.TuijianBean.ListBeanX> list, Context context) {
        this.list = list;
        this.context = context;
    }

    @Override
    public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
        View v = View.inflate(context, R.layout.item_show, null);
        ViewHolder holder = new ViewHolder(v);
        return holder;
    }

    @Override
    public void onBindViewHolder(ViewHolder holder, final int position) {
        Glide.with(context).load(ImgProcess.getImg(list.get(position).getImages())).into(holder.imgRecy);
//      holder.imgRecy.setImageURI(Uri.parse(ImgProcess.getImg(list.get(position).getImages())));
        holder.txtRecy.setText(list.get(position).getTitle());

        holder.itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                listener.OnClick(position,v);
            }
        });

    }

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

    class ViewHolder extends RecyclerView.ViewHolder {
        @BindView(R.id.img_recy)
        ImageView imgRecy;
        @BindView(R.id.txt_recy)
        TextView txtRecy;
        public ViewHolder(View itemView) {
            super(itemView);
            ButterKnife.bind(this,itemView);
        }
    }
}

// 3 跳转到的详情页代码是个Activity

package com.bwei.www.fjd.activity;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.webkit.WebView;

import com.bwei.www.fjd.R;

import butterknife.BindView;
import butterknife.ButterKnife;

public class WebViewActivity extends AppCompatActivity {

    @BindView(R.id.home_web)
    WebView homeWeb;

    /**
     * 详情页
     * @param savedInstanceState
     */
    //详情页
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_web_view);
        ButterKnife.bind(this);
        Intent intent = getIntent();
        String url = intent.getStringExtra("url");
        homeWeb.loadUrl(url);

    }
}

// 4 详情页的布局

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <WebView
        android:id="@+id/home_web"
        android:layout_width="match_parent"
        android:layout_height="match_parent"></WebView>



</LinearLayout>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值