gpt4 book ai didi

android - 在android中以横向模式在viewpager中使图像适合屏幕宽度

转载 作者:行者123 更新时间:2023-11-29 21:09:45 27 4
gpt4 key购买 nike

我有一个 VerticalViewPager,里面有一些图片。当我在横向模式下旋转我的设备时,我的 ImageView 不会缩放到我的屏幕宽度。它适合图像的高度。我使用了 AspectRatioImageView。它适合宽度,但 VerticalViewPager 不会向下滚动。谢谢。

activity_main.xml:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<HackyViewPager
android:id="@+id/vvp"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#fff"
>
</HackyViewPager>
</RelativeLayout>

这是rowitemview.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:pixlui="http://schemas.android.com/apk/com.neopixl.pixlui"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="#fff" >
<AspectRatioImageView
android:id="@+id/imageView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@drawable/m4_3" />
</LinearLayout>

这是我的 ImagePageAdapterinstaniateItem,它扩展了 PagerAdapter:

@Override
public Object instantiateItem(ViewGroup container, int position)
{
Context context = MainActivity.this;

container.requestLayout();
AspectRatioImageView imageView = new AspectRatioImageView(context);
imageView.setImageDrawable(getResources().getDrawable(R.drawable.m4_3));


mAttacher = new PhotoViewAttacher(imageView);
mAttacher.setOnMatrixChangeListener(new OnMatrixChangedListener() {

@Override
public void onMatrixChanged(RectF rect) {
if((int)rect.width()>_width)
viewPager.setLocked(true);
else
viewPager.setLocked(false);
}
});

P.S:问题在于 viewPager 高度。当我向下滚动图像时,它只是转到另一页,而不是滚动缩放后的图像。

最佳答案

这是您需要的。

这是我发现的一个很好的解决方案。

Android Crop Center of Bitmap

这允许根据您的方向设置高度和宽度。

要将图像的比例更改为全屏,您通常会像这样使用中心裁剪:

yourImageView.setScaleType(ImageView.ScaleType.CENTER_CROP);

希望这些信息有用..:)

关于android - 在android中以横向模式在viewpager中使图像适合屏幕宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23335280/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com