});
}
+
@Override
public int getItemCount() {
return dataList.size();
notifyDataSetChanged();
}
+ public String getCurrentItemText() {
+ if (currentSelected != -1) {
+ return dataList.get(currentSelected);
+ }
+ return "";
+ }
+
public class InnerHolder extends RecyclerView.ViewHolder {
public InnerHolder(View itemView) {
private ShootItemAdapter shootItemAdapter;
private List<String> mResponseTextList;
private View replyBtn;
+ private OnActionDoListener mListener;
public WebMessageAdapter(ViewPager msgPage) {
this.mViewPager = msgPage;
mViewPager.setCurrentItem(1);
}
});
+ View readBtn = item.findViewById(R.id.read_btn);
+ readBtn.setOnClickListener(v -> {
+ //回复已阅读,结束UI
+ if (mListener != null) {
+ mListener.onRead();
+ }
+ });
} else if (position == 1) {
item = View.inflate(container.getContext(), R.layout.web_msg_item_shoot, null);
shootListView = (RecyclerView) item.findViewById(R.id.shoot_list_view);
mViewPager.setCurrentItem(0);
}
});
+ View sendBtn = item.findViewById(R.id.send);
+ sendBtn.setOnClickListener(v -> {
+ if (mListener != null && shootItemAdapter != null) {
+ mListener.onReply(shootItemAdapter.getCurrentItemText());
+ }
+ });
if (shootItemAdapter == null) {
shootItemAdapter = new ShootItemAdapter();
}
webMsgView.setText(text);
}
}
+
+ public void setOnActionDoListener(OnActionDoListener listener) {
+ this.mListener = listener;
+ }
+
+ public interface OnActionDoListener {
+ void onRead();
+
+ void onReply(String replyText);
+ }
}
msgPage.setOffscreenPageLimit(2);
//设置适配器
messageAdapter = new WebMessageAdapter(msgPage);
+ messageAdapter.setOnActionDoListener(new WebMessageAdapter.OnActionDoListener() {
+ @Override
+ public void onRead() {
+ //回复消息
+ //显示结果
+ }
+
+ @Override
+ public void onReply(String replyText) {
+ //回复消息
+ }
+ });
if (!TextUtils.isEmpty(currentText)) {
messageAdapter.updateMsgText(currentText);
}