*you should make as(the work solution): *
public void bind() {
try {
pb.setVisibility(View.VISIBLE);
ViewBinder viewBinder = new ViewBinder.Builder(R.layout.item_mopub)
.mainImageId(R.id.image)
.iconImageId(R.id.native_ad_daa_icon_image)
.build();
MoPubNative.MoPubNativeNetworkListener moPubNativeListener =
new MoPubNative.MoPubNativeNetworkListener() {
@Override
public void onNativeLoad(NativeAd nativeAd) {
try {
View adViewRender = nativeAd.createAdView(context,
container);
nativeAd.renderAdView(adViewRender);
nativeAd.prepare(adViewRender);
container.addView(adViewRender);
pb.setVisibility(View.GONE);
} catch (IllegalStateException ex) {
Log.e(“err”, "onNativeLoad: " + ex.getMessage());
}
}
@Override
public void onNativeFail(NativeErrorCode errorCode) {
Log.d("LockUpMopub", errorCode + " errorcode");
entities.remove(entity);
notifyDataSetChanged();
}
};
MoPubNative mMoPubNative = new MoPubNative(context
, entity.getAndroidId(), moPubNativeListener);
MoPubStaticNativeAdRenderer adRenderer = new
MoPubStaticNativeAdRenderer(viewBinder);
mMoPubNative.registerAdRenderer(adRenderer);
mMoPubNative.makeRequest();
} catch (Exception ex) {
pb.setVisibility(View.GONE);
container.setVisibility(View.GONE);
Log.e("err", "bind: " + ex.getMessage());
}
}