Android 毕加索在图像中的红角
我使用毕加索在ViewPager中加载和显示图片 Viewpager适配器:Android 毕加索在图像中的红角,android,image-processing,picasso,Android,Image Processing,Picasso,我使用毕加索在ViewPager中加载和显示图片 Viewpager适配器: private List<ImageItem> bannerList; ViewPager pager = get(); Picasso p = new Picasso.Builder(RefApplication.getInstance()) .downloader(new OkHttpDownloader(okHttpClient)) .build(); p.s
private List<ImageItem> bannerList;
ViewPager pager = get();
Picasso p = new Picasso.Builder(RefApplication.getInstance())
.downloader(new OkHttpDownloader(okHttpClient))
.build();
p.setIndicatorsEnabled(true);
p.setLoggingEnabled(true);
pager.setAdapter(new PagerAdapter() {
private ViewGroup.LayoutParams lp =
new ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT
);
@Override
public int getCount() {
return bannerList.size();
}
@Override
public boolean isViewFromObject(View view, Object object) {
return com.annimon.stream.Objects.equals(view, object);
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
FrameLayout layout = new FrameLayout(container.getContext());
ProgressBar progressBar = new ProgressBar(container.getContext());
ImageView imageView = new ImageView(activity);
final ImageItem item = bannerList.get(position);
p.load(item.imageUrl()).into(imageView, new Callback() {
@Override
public void onSuccess() {
progressBar.setVisibility(GONE);
}
@Override
public void onError() {
}
});
imageView.setOnClickListener(view -> item.onClick().onClick(imageView));
layout.addView(imageView, lp);
layout.addView(progressBar, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.CENTER));
container.addView(layout, lp);
return layout;
}
});
私人列表横幅列表;
ViewPager pager=get();
毕加索p=new Picasso.Builder(RefApplication.getInstance())
.downloader(新的OkHttpDownloader(okHttpClient))
.build();
p、 SetIndicatorEnabled(真);
p、 setLoggingEnabled(真);
pager.setAdapter(新的PagerAdapter(){
私有ViewGroup.LayoutParams lp=
新建ViewGroup.LayoutParams(
ViewGroup.LayoutParams.MATCH_父级,
ViewGroup.LayoutParams.MATCH_父级
);
@凌驾
public int getCount(){
返回bannerList.size();
}
@凌驾
公共布尔值isViewFromObject(视图,对象){
返回com.annimon.stream.Objects.equals(视图,对象);
}
@凌驾
公共项(视图组容器、int位置、对象){
container.removeView((视图)对象);
}
@凌驾
公共对象实例化项(视图组容器,int位置){
FrameLayout=新的FrameLayout(container.getContext());
ProgressBar ProgressBar=新的ProgressBar(container.getContext());
ImageView ImageView=新的ImageView(活动);
最终ImageItem项目=bannerList.get(位置);
p、 将(item.imageUrl())加载到(imageView,新回调()中){
@凌驾
成功时的公共无效(){
progressBar.setVisibility(已消失);
}
@凌驾
公开无效{
}
});
setOnClickListener(视图->项.onClick().onClick(imageView));
layout.addView(图像视图,lp);
layout.addView(progressBar、新FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_内容、ViewGroup.LayoutParams.WRAP_内容、Gravity.CENTER));
container.addView(布局,lp);
返回布局;
}
});
每张照片上都有红色的角。如何删除它?我试着去掉合适的中央裁剪,但效果不佳
版本:okhttp:2.5.0毕加索:2.5.2 supportLib 23.1.1安卓5.0+
这是调试指示器。详情如下: 如果您不想看到它,请拨打:
p.setIndicatorsEnabled(false)
它是一个指示器,用于显示从何处加载图像 如果您不想看到它,只需更换:
p.setIndicatorsEnabled(true);
p.setIndicatorsEnabled(true);
与
要隐藏指示灯,请执行以下操作: 与
p.setIndicatorsEnabled(true);
p.setIndicatorsEnabled(false);