适配器中创建一个接口,获取下标,并设置set方法
**
OnClickItem onClickItem;
public void setOnClickItem(OnClickItem onClickItem) {
this.onClickItem = onClickItem;
}
public interface OnClickItem{
void onClick(String position);
}
**
在 子条目的适配器中的寄存器中设置点击事件,获取下标
**
itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
int adapterPosition = getAdapterPosition();
onClickItem.onClick(list.get(adapterPosition-1).getCommodityId()+"");
}
});
**
在父适配器中创建接口来获取下标
**
OnClickdata onClickdata;
public void setOnClickdata(OnClickdata onClickdata) {
this.onClickdata = onClickdata;
}
public interface OnClickdata{
void onClicks(String position);
}
**
在父适配器中的 bind方法中接口回调下标
**
oneAdapter.setOnClickItem(new OneAdapter.OnClickItem() {
@Override
public void onClick(String position) {
onClickdata.onClicks(position);
}
});
**
在fragment页面mvp回调方法中,调用接口回调,传值并跳转到webview页面
**
homeAdapter.setOnClickdata(new HomeAdapter.OnClickdata() {
@Override
public void onClicks(String position) {
Intent intent = new Intent(getActivity(),XqActivity.class);
intent.putExtra("id",position);
startActivity(intent);
Toast.makeText(getActivity(),position,Toast.LENGTH_SHORT).show();
}
});
**
webview页面获取下标并回传给presenter页面
**
private void initView() {
Intent intent = getIntent();
id = intent.getStringExtra("id");
}
private void initData() {
iPresenter = new IPresenter();
iPresenter.setMview(this);
iPresenter.getXq(id);
Log.e("myMessage", id);
**
WEBVIEW页面的MVP的成功 回调方法
**
@Override
public void getData(Object o) {
XqBean xqBean = (XqBean) o;
commodityId = xqBean.getResult().getCommodityId();
Log.i("111", "getXq: " + xqBean.getResult().getPicture());
//获取图片的集合
String pictrue = xqBean.getResult().getPicture();
//截取字符串
listbanners = Arrays.asList(pictrue.split(","));
//获取html的数据
String details = xqBean.getResult().getDetails();
//webview加载url
mWebView.loadDataWithBaseURL(null, details, "text/html", "UTF-8", null);
//允许js交互
mWebView.getSettings().setJavaScriptEnabled(true);
//设置可以支持缩放
mWebView.getSettings().setSupportZoom(true);
//设置出现缩放工具
mWebView.getSettings().setBuiltInZoomControls(true);
//扩大比例
mWebView.getSettings().setUseWideViewPort(true);
mWebView.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
mWebView.getSettings().setLoadWithOverviewMode(true);
mWebView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
mWebView.setWebChromeClient(new WebChromeClient());
//设置数据
mXqTextPrice.setText("¥:" + xqBean.getResult().getPrice());
mXqTextJian.setText(xqBean.getResult().getStock() + "件");
mXqTextXiang.setText(xqBean.getResult().getDescribe());
Glide.with(XqActivity.this).load(xqBean.getResult().getPicture().split(",")[0]).into(mXqIamgXiang);
mXQxbanner.setData(listbanners, null);
mXQxbanner.loadImage(new XBanner.XBannerAdapter() {
@Override
public void loadBanner(XBanner banner, Object model, View view, int position) {
Glide.with(XqActivity.this).load(listbanners.get(position)).into((ImageView) view);
}
});
mXQxbanner.setPageTransformer(Transformer.Default);
}
**