我有什么
我有ImageUri
来自服务器,&我将其设置为我的NetworkImageview
排球图书馆
我想要什么
我希望图片占据width
& height
的NetworkImageview
(想要类似于facebook)
我的问题
我看到width
NetworkImageview
的{{1}}左侧colour
我的代码
xml layout
<RelativeLayout
android:id="@+id/relative_profile_hotot"
android:layout_width="match_parent"
android:layout_height="250dp"
android:layout_below="@+id/relative_profile_header"
android:padding="0dp">
<com.android.volley.toolbox.NetworkImageView
android:id="@+id/img_post_photo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:adjustViewBounds="true"
android:scaleType="center"
android:src="@drawable/image_palce" />
<RelativeLayout
android:id="@+id/relative_profile_footer"
android:layout_width="match_parent"
android:layout_height="50dp"
android:layout_alignParentBottom="true"
android:background="@color/profile_footer_bg">
<TextView
android:id="@+id/tv_profile_photo_location"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:drawableLeft="@drawable/ic_home_place"
android:drawablePadding="5dp"
android:paddingLeft="5dp"
android:paddingTop="5dp"
android:textColor="@color/grey_dark"
android:textSize="@dimen/txt_small"
tools:text="Paris France" />
<TextView
android:id="@+id/tv_profile_photo_description"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/tv_profile_photo_location"
android:layout_marginLeft="20dp"
android:ems="40"
android:padding="2dp"
android:singleLine="true"
android:textColor="@color/grey_light"
android:textSize="@dimen/txt_very_small"
tools:text="Effel Tower,...Read more" />
/>
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/img_foot"
android:src="@drawable/ic_home_footstep_color"
android:padding="5dp"
android:layout_alignParentTop="true"
android:layout_toEndOf="@+id/tv_profile_comment" />
<TextView
android:id="@+id/tv_profile_foot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="10dp"
android:paddingTop="0dp"
android:textColor="@color/grey_light"
android:textSize="@dimen/txt_small"
tools:text="150"
android:layout_alignBottom="@+id/tv_profile_photo_description"
android:layout_alignEnd="@+id/tv_profile_photo_description" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/img_cheers"
android:src="@drawable/ic_home_cheers_color"
android:padding="5dp"
android:layout_alignParentTop="true"
android:layout_toStartOf="@+id/img_comment"
android:layout_marginEnd="14dp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/img_comment"
android:src="@drawable/ic_home_coments"
android:padding="5dp"
android:layout_alignParentTop="true"
android:layout_alignStart="@+id/tv_profile_comment" />
<TextView
android:id="@+id/tv_profile_comment"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingRight="10dp"
android:paddingTop="0dp"
android:textColor="@color/grey_light"
android:textSize="@dimen/txt_small"
tools:text="264"
android:layout_alignBottom="@+id/tv_profile_photo_description"
android:layout_toStartOf="@+id/tv_profile_foot" />
<TextView
android:id="@+id/tv_profile_cheers"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingRight="10dp"
android:paddingTop="0dp"
android:textColor="@color/grey_light"
android:textSize="@dimen/txt_small"
tools:text="3164"
android:layout_alignBottom="@+id/tv_profile_photo_description"
android:layout_toStartOf="@+id/img_comment" />
</RelativeLayout>
</RelativeLayout>
Adapter.java
myBucketListViewHolder.imgPostPic.setImageUrl(model.Uri, imageLoader);
myBucketListViewHolder.imgPostPic.setDefaultImageResId(R.drawable.im_default_cover);
屏幕截图:(
答案 0 :(得分:2)
替换
android:scaleType="center"
与
android:scaleType="centerCrop"
在您的NetworkImageView 中
答案 1 :(得分:0)
同样的事情发生在我身上使用NetworkImageView问题是它的行为与ImageView略有不同,当屏幕密度大于图像宽度时,android: scaleType = "centerCrop"
填充宽度不够想要插入。
尝试使用此代码,在运行时更改图像的宽度,将其调整为屏幕密度。
在layout.xml中
<com.android.volley.toolbox.NetworkImageView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:scaleType="fitCenter"
android:background="@android:color/transparent"
android:id="@+id/imagePagerView"/>
在你的活动中(我有适配器)
Display display = ((Activity) context).getWindowManager().getDefaultDisplay();
DisplayMetrics outMetrics = new DisplayMetrics();
display.getMetrics(outMetrics);
float scWidth = outMetrics.widthPixels;
float scHeigh = outMetrics.heightPixels;
mImageView.getLayoutParams().width = (int) scWidth;
mImageView.getLayoutParams().height = (int) scHeigh;