///Adapter
public class RecyclerAdapter extends RecyclerView.Adapter<RecyclerAdapter.reviewholder> { private Context context; private List<ShowBean.DataBean>list=new ArrayList<>(); public RecyclerAdapter(Context context) { this.context = context; this.list= new ArrayList<>(); } public void addData(List<ShowBean.DataBean> dataBeans){ list.addAll(dataBeans); notifyDataSetChanged(); } public void addData1(List<ShowBean.DataBean> dataBeans){ list.clear(); list.addAll(dataBeans); notifyDataSetChanged(); } @NonNull @Override public reviewholder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) { return new reviewholder(LayoutInflater.from(context).inflate(R.layout.recyclerbase,null)); } @Override public void onBindViewHolder(@NonNull reviewholder reviewholder, int i) { reviewholder.textl.setText(list.get(i).getTitle()); reviewholder.text2.setText(list.get(i).getCreatetime()); ImageLoader.getInstance().displayImage((list.get(i).getImages()).split("\\|")[0],reviewholder.image, Myapplication.getoptions()); final int pid = list.get(i).getPid(); final String detailUrl = list.get(i).getDetailUrl(); reviewholder.image.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { OnRecycleItemListener.OnRecycleItemClick(detailUrl,pid); } }); } @Override public int getItemCount() { return list.size(); } class reviewholder extends RecyclerView.ViewHolder{ ImageView image; TextView textl,text2; public reviewholder(@NonNull View itemView) { super(itemView); image= itemView.findViewById(R.id.image); textl= itemView.findViewById(R.id.text1); text2= itemView.findViewById(R.id.text2); } } OnRecycleItemListener OnRecycleItemListener; public void setOnRecycleItemListener(RecyclerAdapter.OnRecycleItemListener onRecycleItemListener) { OnRecycleItemListener = onRecycleItemListener; } public interface OnRecycleItemListener { void OnRecycleItemClick(String s,int i); } }
---------------------------------------------------------------------------------------------------------------------
public class MainActivity extends AppCompatActivity implements IShowView{ private EditText edittext; private TextView text; private XRecyclerView xrecycler; private Presenter presenter; String name="手机"; int page; private RecyclerAdapter adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取资源ID edittext = findViewById(R.id.edittext); text= findViewById(R.id.text); xrecycler= findViewById(R.id.xrecycler); presenter = new Presenter(this); // presenter.getData(name,page); getinto(); text.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { name=edittext.getText().toString(); presenter.getData(name,page); } }); } private void getinto() { xrecycler.setPullRefreshEnabled(true); xrecycler.setLoadingMoreEnabled(true); xrecycler.setLoadingListener(new XRecyclerView.LoadingListener() { @Override public void onRefresh() { page=0; presenter.getData(name,page); xrecycler.refreshComplete(); } @Override public void onLoadMore() { page++; presenter.getData(name,page); xrecycler.loadMoreComplete(); } }); adapter = new RecyclerAdapter(this); xrecycler.setLayoutManager(new LinearLayoutManager(this)); xrecycler.addItemDecoration(new DividerItemDecoration(this,DividerItemDecoration.VERTICAL)); xrecycler.setAdapter(adapter); } @Override public void getLists(ShowBean showBean) { List<ShowBean.DataBean> data = showBean.getData(); if (page==0){ adapter.addData1(data); }else { adapter.addData(data); } adapter.setOnRecycleItemListener(new RecyclerAdapter.OnRecycleItemListener() { @Override public void OnRecycleItemClick(String s, int i) { Intent intent = new Intent(MainActivity.this,ShowActivity.class); intent.putExtra("s",s); startActivity(intent); } }); } }
----------------------------------------------------------------------------------------------------------------------------------------------------------
<EditText android:layout_marginTop="10dp" android:id="@+id/edittext" android:layout_marginLeft="12dp" android:layout_width="480dp" android:background="#E6E6FA" android:hint="在千万海外商品中搜索" android:drawableLeft="@mipmap/aa" android:layout_height="wrap_content" /> <TextView android:layout_marginTop="12dp" android:id="@+id/text" android:text="取消" android:textStyle="bold" android:textSize="20dp" android:textColor="#f000" android:layout_alignParentRight="true" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <com.jcodecraeer.xrecyclerview.XRecyclerView android:layout_below="@id/edittext" android:id="@+id/xrecycler" android:paddingTop="8dp" android:layout_width="match_parent" android:layout_height="match_parent" />