Android 拍摄非常宽的图像并将其裁剪到特定的尺寸

Android 拍摄非常宽的图像并将其裁剪到特定的尺寸,android,imageview,android-imageview,crop,Android,Imageview,Android Imageview,Crop,我有一个非常广泛的形象,在我的视窗持有人。使用centerCrop的默认ImageView行为是这样的图像- 但我想裁剪它,这样它就会像这样聚焦在左侧- 需要考虑的是,此ViewHolder经常被调整大小 这是我的ViewHolder XML和适配器。请注意,我使用的fitXY只是为了显示,这不是我真正想要的,所以请忽略这一行。- 适配器- 类VendorAdapter(private-val-miniVendorModels:List,private-val-context:conte

我有一个非常广泛的形象,在我的视窗持有人。使用
centerCrop
的默认ImageView行为是这样的图像-

但我想裁剪它,这样它就会像这样聚焦在左侧-

需要考虑的是,此ViewHolder经常被调整大小

这是我的ViewHolder XML和适配器。请注意,我使用的
fitXY
只是为了显示,这不是我真正想要的,所以请忽略这一行。-


适配器-

类VendorAdapter(private-val-miniVendorModels:List,private-val-context:context):RecyclerView.Adapter(){
伴星{
const val EXTRA_VENDOR_MODEL=“EVM”
}
private val vendorsHoldersList=mutableListOf()
override fun onCreateViewHolder(视图组:视图组,i:Int):供应商持有人{
val view=LayoutInflater.from(viewGroup.context).充气(R.layout.fragment\u marketplace\u vendor\u row\u item,viewGroup,false)
val vendorsHolder=vendorsHolder(视图)
卖方持有人列表。添加(卖方持有人)
vendorsHolder.rootLayout.addOnLayoutChangeListener{v,left,top,right,bottom,oldLeft,oldTop,oldRight,oldBottom->
vendorsHolder.rootLayout.updateLayoutParams{
此宽度=250+底部
}
}
vendorsHolder.rootLayout.pivotX=0f
vendorsHolder.rootLayout.pivotY=vendorsHolder.rootLayout.measuredHeight.toFloat()
退货卖方持有人
}
覆盖onBindViewHolder(卖方持有人:卖方持有人,i:Int){
val模型=小型供应商模型[i]
Picasso.get().load(model.bannerPicture).into(vendorsHolder.vendorImageView)
vendorsHolder.vendorImageView.setOnClickListener{v:视图?->
试一试{
val intent=intent(上下文,VendorPageActivity::class.java)
意向.额外(额外供应商型号,型号)
上下文。起始触觉(意图)
}捕获(e:例外){
e、 printStackTrace()
Toast.makeText(上下文,resourceheloper.getString(R.string.marketplace\u vendor\u unavailable),Toast.LENGTH\u SHORT.show()
}
}
}
重写getItemCount():Int=miniVendorModels.size
}
这应该是一件非常简单的事情,但我已经连续几个小时为这件事苦苦挣扎了

有人有主意吗