Square ImageView

Sha*_*kti 10 android android-layout android-imageview

我试图ImageView在对话框中显示一个总是正方形的形状.尺寸可能会有所不同,具体取决于显示器的分辨率(纵向宽度),但ImageView需要形成最大的方形,以容纳其中的方形图像.这是我的XML代码.

<ImageView
    android:id="@+id/dialog_image"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:scaleType="centerInside"
    android:adjustViewBounds="true"
    />
Run Code Online (Sandbox Code Playgroud)

但问题是Square图像是在运行时动态设置的,ImageView最终是一个宽度为Square Image size的矩形.我能做些什么来实现同样的目标?

编辑:要想知道我想要实现的是在联系人应用程序中选择联系人并单击个人资料图片时显示的内容.它缩小并保持在活动顶部的正方形.

Ali*_*ran 13

在运行时设置图像视图高度,但首先使用此代码获取显示宽度

Display  display = getWindowManager().getDefaultDisplay();
int swidth = display.getWidth();
Run Code Online (Sandbox Code Playgroud)

现在像这样设置图像视图的高度

LayoutParams params = eventImage.getLayoutParams();
params.width = LayoutParams.FILL_PARENT;
params.height = swidth ;
eventImage.setLayoutParams(params);
Run Code Online (Sandbox Code Playgroud)