ViewPager 显示具有不同尺寸图像的全屏画廊
ViewPager to display a full screen gallery with images of different sizes
我尝试使用 viewPager 组件制作幻灯片画廊。普通视图可以,但我不知道如何显示不同尺寸的全屏图像,因为无法将 ViewPager 高度设置为 WRAP_CONTENT。
我看到这是因为构建组件时没有加载所有图片,解决方案是浏览所有图像(循环直到getChlidCount())并使用较大的高度图片,但我不能,因为其他图片会变形。
有人可以帮助我吗?我到处看,但仍然没有解决办法。
做一件看似简单的事情,怎么会这么复杂呢?
我不确定能否 post 图片,所以这是我的问题的示意图。
http://nsa38.casimages.com/img/2015/07/07/150707040457377832.png
谢谢
我自己找到了解决办法。其实很简单。
在 ViewPager 适配器中,不要直接将 imageView 添加到 viewpager,而是将您的 imageView 添加到 linearLayout,然后将 linearLayout 添加到您的 viewPager。
这意味着,类似于:
ImageView iv = new ImageView();
LinearLayout ll = new LinearLayout();
ll.addView(iv,0);
viewPager.addView(ll,0);
我尝试使用 viewPager 组件制作幻灯片画廊。普通视图可以,但我不知道如何显示不同尺寸的全屏图像,因为无法将 ViewPager 高度设置为 WRAP_CONTENT。
我看到这是因为构建组件时没有加载所有图片,解决方案是浏览所有图像(循环直到getChlidCount())并使用较大的高度图片,但我不能,因为其他图片会变形。
有人可以帮助我吗?我到处看,但仍然没有解决办法。 做一件看似简单的事情,怎么会这么复杂呢?
我不确定能否 post 图片,所以这是我的问题的示意图。
http://nsa38.casimages.com/img/2015/07/07/150707040457377832.png
谢谢
我自己找到了解决办法。其实很简单。
在 ViewPager 适配器中,不要直接将 imageView 添加到 viewpager,而是将您的 imageView 添加到 linearLayout,然后将 linearLayout 添加到您的 viewPager。
这意味着,类似于:
ImageView iv = new ImageView();
LinearLayout ll = new LinearLayout();
ll.addView(iv,0);
viewPager.addView(ll,0);