我正在试验if (subscription != null && !subscription.isUnsubscribed()) {
subscription.unsubscribe();
}
和RecyclerView
。
我最终想要显示尺寸与此类似的图像,如果可能的话甚至是正方形:
使GridLayoutManager
成为可能的元素是什么?我是否修改了用于填充GridLayoutManager
?
答案 0 :(得分:2)
首先,您必须将ImageView
子类化为如下:
import android.content.Context;
import android.util.AttributeSet;
import android.widget.ImageView;
public class MyImageview extends ImageView {
public MyImageview (Context context) {
super(context);
}
public MyImageview (Context context, AttributeSet attrs) {
super(context, attrs);
}
public MyImageview (Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
setMeasuredDimension(getMeasuredWidth(), getMeasuredWidth()); // Snap to
// width
}
}
在XML文件中使用此文件。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.app.MyImageview
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/imageBackground"
android:scaleType="centerCrop"/>
</LinearLayout>
确保MyImageView
身高和宽度必须为match_parent
。
答案 1 :(得分:0)
如果你使用Picaso,那么下面的用户可以顺利使用:
Picasso.with(mContext)
.load(mUri)
.placeholder(R.drawable.ic_loading_animated)
.fit()
.centerCrop() // resizing images can really distort the aspect ratio, prevent this
.into(mImageView)