//activity
public class SouSuoLieBiaoActivity extends AppCompatActivity implements Main{
private List<MySouSuoLieBiaoBean.DataBean> listad=new ArrayList<>();
private RecyclerView recycler_view;
private ImageView image_fanhuishouye;
private RelativeLayout relative_sousuoliebiao;
private TextView sousuo_liebiao;
private ImageView image_qiehuan;
private int l=0;
private int page=1;
private String namesp;
private SmartRefreshLayout smartrefresh_liebiao;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
View decorView = getWindow().getDecorView();
int option = View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(option);
ActionBar actionBar = getSupportActionBar();
actionBar.hide();
setContentView(R.layout.activity_sou_suo_lie_biao);
smartrefresh_liebiao = findViewById(R.id.smartrefresh_liebiao);
image_fanhuishouye = findViewById(R.id.image_fanhuishouye);
image_qiehuan = findViewById(R.id.image_qiehuan);
sousuo_liebiao = findViewById(R.id.sousuo_liebiao);
relative_sousuoliebiao = findViewById(R.id.relative_sousuoliebiao);
recycler_view = findViewById(R.id.xrecycler_view);
namesp = getIntent().getStringExtra("namesp");
sousuo_liebiao.setText(namesp);
Presenter presenter = new Presenter(SouSuoLieBiaoActivity.this);
presenter.getLieBiaoUrl(ApiUtil.sousuoliebiao, namesp,page);
//返回首页
image_fanhuishouye.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
finish();
}
});
//搜索页面
relative_sousuoliebiao.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(SouSuoLieBiaoActivity.this, SouSuoActivity.class);
startActivity(intent);
finish();
}
});
//切换布局
image_qiehuan.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (!namesp.equals("")){
if (l==0){
image_qiehuan.setImageResource(R.drawable.kind_liner);
l=1;
}else if (l==1){
image_qiehuan.setImageResource(R.drawable.kind_grid);
l=0;
}
Presenter presenter = new Presenter(SouSuoLieBiaoActivity.this);
presenter.getLieBiaoUrl(ApiUtil.sousuoliebiao,namesp,page);
}else {
Toast.makeText(SouSuoLieBiaoActivity.this,"++++++",Toast.LENGTH_LONG).show();
}
}
});
}
@Override
public void getStringJson(String json) {
}
@Override
public void getStringList(String json) {
}
@Override
public void getLieBiaoBean(final MySouSuoLieBiaoBean mySouSuoLieBiaoBean) {
runOnUiThread(new Runnable() {
@Override
public void run() {
listad.addAll(mySouSuoLieBiaoBean.getData());
if (l==0){
//final List<MySouSuoLieBiaoBean.DataBean> list = mySouSuoLieBiaoBean.getData();
recycler_view.setLayoutManager(new LinearLayoutManager(
SouSuoLieBiaoActivity.this,LinearLayoutManager.VERTICAL,false));
MySouSuoLieBiaoAdapter adapter = new MySouSuoLieBiaoAdapter(SouSuoLieBiaoActivity.this, listad);
recycler_view.setAdapter(adapter);
smartrefresh_liebiao.setOnRefreshListener(new OnRefreshListener() {
@Override
public void onRefresh(RefreshLayout refreshlayout) {
smartrefresh_liebiao.finishRefresh(2000);
}
});
smartrefresh_liebiao.setOnLoadmoreListener(new OnLoadmoreListener() {
@Override
public void onLoadmore(RefreshLayout refreshlayout) {
page++;
Presenter presenter = new Presenter(SouSuoLieBiaoActivity.this);
presenter.getLieBiaoUrl(ApiUtil.sousuoliebiao, namesp,page);
recycler_view.setLayoutManager(new LinearLayoutManager(
SouSuoLieBiaoActivity.this,LinearLayoutManager.VERTICAL,false));
MySouSuoLieBiaoAdapter adapter = new MySouSuoLieBiaoAdapter(SouSuoLieBiaoActivity.this, listad);
recycler_view.setAdapter(adapter);
smartrefresh_liebiao.finishLoadmore();
}
});
adapter.setItemListenner(new ItemListenner() {
@Override
public void OnItemClick(int position) {
Intent intent = new Intent(SouSuoLieBiaoActivity.this, JiaRuGouWuCheActivity.class);
intent.putExtra("pid",listad.get(position).getPid()+"");
startActivity(intent);
}
@Override
public void OnLongClick(int position) {
Toast.makeText(SouSuoLieBiaoActivity.this,"笨蛋该点击了!",Toast.LENGTH_LONG).show();
}
});
}else {
//listad.addAll(mySouSuoLieBiaoBean.getData());
//final List<MySouSuoLieBiaoBean.DataBean> list = mySouSuoLieBiaoBean.getData();
recycler_view.setLayoutManager(new GridLayoutManager(
SouSuoLieBiaoActivity.this,2,GridLayoutManager.VERTICAL,false));
MyGroupAdapter adapter = new MyGroupAdapter(SouSuoLieBiaoActivity.this, listad);
recycler_view.setAdapter(adapter);
smartrefresh_liebiao.setOnRefreshListener(new OnRefreshListener() {
@Override
public void onRefresh(RefreshLayout refreshlayout) {
smartrefresh_liebiao.finishRefresh(2000);
}
});
smartrefresh_liebiao.setOnLoadmoreListener(new OnLoadmoreListener() {
@Override
public void onLoadmore(RefreshLayout refreshlayout) {
page++;
Presenter presenter = new Presenter(SouSuoLieBiaoActivity.this);
presenter.getLieBiaoUrl(ApiUtil.sousuoliebiao, namesp,page);
recycler_view.setLayoutManager(new LinearLayoutManager(
SouSuoLieBiaoActivity.this,LinearLayoutManager.VERTICAL,false));
MySouSuoLieBiaoAdapter adapter = new MySouSuoLieBiaoAdapter(SouSuoLieBiaoActivity.this, listad);
recycler_view.setAdapter(adapter);
smartrefresh_liebiao.finishLoadmore();
}
});
adapter.setItemClicked(new ItemListenner() {
@Override
public void OnItemClick(int position) {
Intent intent = new Intent(SouSuoLieBiaoActivity.this, JiaRuGouWuCheActivity.class);
intent.putExtra("pid",listad.get(position).getPid()+"");
startActivity(intent);
}
@Override
public void OnLongClick(int position) {
Toast.makeText(SouSuoLieBiaoActivity.this,"笨蛋该点击了!",Toast.LENGTH_LONG).show();
}
});
}
}
});
}
}
//列表adapter
public class MySouSuoLieBiaoAdapter extends RecyclerView.Adapter<MyLieBiaoHolder> {
private final Context context;
private final List<MySouSuoLieBiaoBean.DataBean> list;
private ItemListenner itemListenner;
public MySouSuoLieBiaoAdapter(Context context, List<MySouSuoLieBiaoBean.DataBean> list) {
this.context = context;
this.list = list;
}
@Override
public MyLieBiaoHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.item_linaer, parent, false);
MyLieBiaoHolder holder = new MyLieBiaoHolder(view);
return holder;
}
@Override
public void onBindViewHolder(MyLieBiaoHolder holder, final int position) {
String[] split = list.get(position).getImages().split("\\|");
Glide.with(context).load(split[0]).into(holder.image_linaer);
holder.text_title.setText(list.get(position).getTitle());
holder.text_price.setText("折扣价:"+list.get(position).getPrice());
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
itemListenner.OnItemClick(position);
}
});
holder.itemView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
itemListenner.OnLongClick(position);
return true;
}
});
}
@Override
public int getItemCount() {
return list.size();
}
public void setItemListenner(ItemListenner itemListenner){
this.itemListenner = itemListenner;
}
}
//列表adapter的hodler
public class MyLieBiaoHolder extends RecyclerView.ViewHolder {
public ImageView image_linaer;
public TextView text_title;
public TextView text_price;
public MyLieBiaoHolder(View itemView) {
super(itemView);
image_linaer = itemView.findViewById(R.id.image_linaer);
text_title = itemView.findViewById(R.id.text_title);
text_price = itemView.findViewById(R.id.text_price);
}
}
//网格显示adapter
public class MyGroupAdapter extends RecyclerView.Adapter<MyGridHolder> {
private final Context context;
private final List<MySouSuoLieBiaoBean.DataBean> list;
private ItemListenner itemListenner;
public MyGroupAdapter(Context context, List<MySouSuoLieBiaoBean.DataBean> list) {
this.context = context;
this.list = list;
}
@Override
public MyGridHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(context).inflate(R.layout.item_grider, parent, false);
MyGridHolder holder = new MyGridHolder(view);
return holder;
}
@Override
public void onBindViewHolder(MyGridHolder holder, final int position) {
String[] split = list.get(position).getImages().split("\\|");
Glide.with(context).load(split[0]).into(holder.image_grid);
holder.grid_title.setText(list.get(position).getTitle());
holder.grid_price.setText("折扣价:"+list.get(position).getPrice());
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
itemListenner.OnItemClick(position);
}
});
holder.itemView.setOnLongClickListener(new View.OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
itemListenner.OnLongClick(position);
return true;
}
});
}
@Override
public int getItemCount() {
return list.size();
}
public void setItemClicked(ItemListenner itemListenner){
this.itemListenner = itemListenner;
}
}
//网格adapter的holder
public class MyGridHolder extends RecyclerView.ViewHolder{
public ImageView image_grid;
public TextView grid_title;
public TextView grid_price;
public MyGridHolder(View itemView) {
super(itemView);
image_grid = itemView.findViewById(R.id.image_grid);
grid_title = itemView.findViewById(R.id.grid_title);
grid_price = itemView.findViewById(R.id.grid_price);
}
}
//activity布局
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.example.myjingdongxiangmu.activity.SouSuoLieBiaoActivity"> <com.scwang.smartrefresh.layout.SmartRefreshLayout android:id="@+id/smartrefresh_liebiao" android:layout_width="match_parent" android:layout_height="wrap_content"> <ScrollView android:layout_width="match_parent" android:layout_height="wrap_content"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <LinearLayout android:id="@+id/line" android:layout_width="match_parent" android:layout_height="40dp" android:orientation="horizontal"> <ImageView android:id="@+id/image_fanhuishouye" android:clickable="true" android:layout_width="0dp" android:layout_weight="1" android:layout_height="match_parent" android:background="@drawable/leftjiantou"/> <RelativeLayout android:id="@+id/relative_sousuoliebiao" android:clickable="true" android:layout_width="0dp" android:layout_weight="5" android:background="@drawable/sousuo" android:layout_height="40dp"> <LinearLayout android:layout_width="match_parent" android:layout_height="40dp" android:orientation="horizontal"> <ImageView android:layout_width="0dp" android:layout_weight="1" android:layout_gravity="center" android:layout_height="25dp" android:src="@drawable/a_4"/> <TextView android:id="@+id/sousuo_liebiao" android:layout_width="0dp" android:layout_weight="5" android:gravity="center" android:layout_height="40dp" android:text="鞋靴超级品类日 领券满499减..." /> <ImageView android:layout_width="0dp" android:layout_weight="1" android:layout_gravity="center" android:layout_height="25dp" android:src="@drawable/root"/> </LinearLayout> </RelativeLayout> <ImageView android:id="@+id/image_qiehuan" android:layout_width="0dp" android:layout_weight="1" android:layout_height="match_parent" android:src="@drawable/kind_grid"/> </LinearLayout> <android.support.v7.widget.RecyclerView android:id="@+id/xrecycler_view" android:layout_width="match_parent" android:layout_height="wrap_content"></android.support.v7.widget.RecyclerView> </LinearLayout> </ScrollView> </com.scwang.smartrefresh.layout.SmartRefreshLayout>//列表布局
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/image_linaer"
android:layout_width="100dp"
android:layout_height="100dp" />
<TextView
android:id="@+id/text_title"
android:layout_toRightOf="@+id/image_linaer"
android:layout_alignTop="@id/image_linaer"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/text_price"
android:textColor="#ff0000"
android:layout_toRightOf="@+id/image_linaer"
android:layout_alignBottom="@id/image_linaer"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</RelativeLayout>
//网格布局
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent"
android:layout_height="wrap_content">
<ImageView
android:id="@+id/image_grid"
android:layout_width="220dp"
android:layout_height="220dp" />
<TextView
android:id="@+id/grid_title"
android:layout_below="@+id/image_grid"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<TextView
android:id="@+id/grid_price"
android:layout_below="@+id/grid_title"
android:textColor="#ff0000"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</RelativeLayout>
详情http://blog.csdn.net/wei844067872/article/details/79104603