android 复制对象数组,android 对象数组简单使用

首先看下数据返回结构:

{"status":"ok","data":{"list":["P1248","P0002","P0004","P0004","P0002"]},"token":{"uid":"13573111","openid":"oBPBmw0jqu3tyrtyhreywYOiK60SaJHq462kcIddss","loginid":"fdb5a89d69f5a8eb246hrthrthrhdherj4f9b9173c99ecfdfdsfsds"}}

数据请求:

//历史请求

@SuppressLint("StaticFieldLeak")

class HisTask extends AsyncTask {

@Override

protected CodeHisResponse doInBackground(String... strings) {

return DataInterface.hisResponse(hisdata);

}

@Override

protected void onPreExecute() {

super.onPreExecute();

showProgressDialog();

}

@Override

protected void onPostExecute(CodeHisResponse result) {

super.onPostExecute(result);

dismissProgressDialog();

if (result == null) {

Toast.makeText(CodeActivity.this, R.string.net_response, Toast.LENGTH_SHORT).show();

return;

}

if (result.getData() != null && result.getStatus().equals("ok")) {

CodeHisResponse.DataBean hisBean = result.getData();

hisAdapter.addList(hisBean);

} else {

toast(result.getMessage());

}

}

}

适配器器:

/**

* 历史列表填充器BaseAdapter

*/

class HisAdapter extends RecyclerView.Adapter implements View.OnClickListener {

private Context mContext;

private List hisData = new ArrayList<>();

//声明自定义的监听接口

private OnCodeHisRecyclerviewItemClickListener mOncodeRecyclerviewItemClickListener = null;

public HisAdapter(Context context, OnCodeHisRecyclerviewItemClickListener mOnRecyclerviewItemClickListener) {

mContext = context;

this.mOncodeRecyclerviewItemClickListener = mOnRecyclerviewItemClickListener;

}

public void addList(CodeHisResponse.DataBean mlist) {

hisData.clear();

hisData.addAll(mlist.getList());

notifyDataSetChanged();

}

//清空数据

public void cleardata() {

hisData.clear();

notifyDataSetChanged();

}

@Override

public int getItemCount() {

if (hisData == null) {

return 0;

} else if (hisData.size() > 5) {

return 5;

} else {

return this.hisData.size();

}

}

public String getItem(int position) {

return hisData.get(position);

}

@Override

public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {

View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.code_his_list, parent, false);

view.setOnClickListener(this);

return new ViewHolder(view);

}

@SuppressLint("SetTextI18n")

@Override

public void onBindViewHolder(ViewHolder holder, final int position) {

String item = hisData.get(position);

if (item != null) {

holder.tv_code.setText(item);

holder.itemView.setTag(position);//给view设置tag以作为参数传递到监听回调方法中

}

}

@Override

public void onClick(View v) {

//将监听传递给自定义接口

mOncodeRecyclerviewItemClickListener.onItemClickListener(v, ((int) v.getTag()));

}

class ViewHolder extends RecyclerView.ViewHolder {

TextView tv_code;

ViewHolder(View itemView) {

super(itemView);

tv_code = (TextView) itemView.findViewById(R.id.tv_code);

}

}

}

public interface OnCodeHisRecyclerviewItemClickListener {

void onItemClickListener(View v, int position);

}

适配器item:

xmlns:app="http://schemas.android.com/tools"

app:ignore="NamespaceTypo">

name="code"

type="com.xcbd.module.code_search.item.Hiscode" />

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:orientation="vertical">

android:layout_width="match_parent"

android:layout_height="38dp"

android:background="@drawable/btn_click_back_color"

android:paddingBottom="10dp"

android:paddingTop="10dp">

android:id="@+id/showimager"

android:layout_width="15dp"

android:layout_height="15dp"

android:layout_alignParentLeft="true"

android:layout_centerInParent="true"

android:layout_marginLeft="10dp"

android:src="@mipmap/code_his_icon" />

android:id="@+id/tv_code"

style="@style/content_layout"

android:layout_centerInParent="true"

android:layout_marginLeft="8dp"

android:layout_toRightOf="@+id/showimager"

android:text="@{code.code}" />

android:id="@+id/tv_ss_pr"

android:layout_width="10dp"

android:layout_height="10dp"

android:layout_alignParentRight="true"

android:layout_centerInParent="true"

android:layout_marginBottom="2dp"

android:layout_marginRight="10dp"

android:background="@mipmap/right"

android:gravity="center" />

android:layout_width="match_parent"

android:layout_height="0.5dp"

android:layout_marginLeft="10dp"

android:layout_marginRight="10dp"

android:background="@color/cut_off_rule_line" />

Activity调用:

new HisTask().execute();

hisAdapter = new HisAdapter(CodeActivity.this, onCodeHisRecyclerviewItemClickListener);

lv_his.setAdapter(hisAdapter);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值