我有一个允许CircularImageView的库,但我遇到了一个无法修复的问题。
我以这种方式在我的布局中添加它:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:gravity="center"
android:orientation="vertical">
<com.mikhaellopez.circularimageview.CircularImageView
android:id="@+id/circularImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/test"
app:civ_border="true"
app:civ_border_color="#3f51b5"
app:civ_border_width="8dp"
app:civ_shadow="true"
app:civ_shadow_color="#3f51b5"
app:civ_shadow_radius="10" />
</LinearLayout>
<LinearLayout
android:layout_width="240dp"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical">
<SeekBar-
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<!-- ... -->
</LinearLayout>
在某些图片上,我在视图中显示黑色背景(在PNG图像上,但ic_launcher
例如效果很好):
我可以在更改onMesure
方法时解决问题。
在:
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int width = measureWidth(widthMeasureSpec);
int height = measureHeight(heightMeasureSpec);
int imageSize = (width < height) ? width : height;
setMeasuredDimension(imageSize, imageSize);
}
后:
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
int width = measureWidth(widthMeasureSpec);
int height = measureHeight(heightMeasureSpec);
/*int imageSize = (width < height) ? width : height;
setMeasuredDimension(imageSize, imageSize);*/
setMeasuredDimension(width, height);
}
但是通过这次修改,我的观点并未集中:
有人可以帮助我修复黑色背景或找到一种新的方式来固定我的观点吗?