【发布时间】:2014-02-05 09:43:07
【问题描述】:
我正在使用网格视图来显示我的数据 [即图像及其倾斜]
我的图像是通过我的图像加载器库动态加载的。问题是我的一些图像是横向或纵向的。因此,我的网格元素不保持精确的平方比。有些是垂直拉伸或以其他方式压缩。
<GridView
android:id="@+id/fcpl_grid_listview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:numColumns="2"
android:scrollingCache="false"/>
这是我的 getView 方法:
public View getView(final int position, View convertView, final ViewGroup parent) {
final ViewHolder viewholder;
Log.e("Calling...","getView");
if (convertView == null) {
convertView = inflater.inflate(R.layout.inflater_product_list, parent, false);
viewholder = new ViewHolder();
viewholder.productImage = (ImageView) convertView.findViewById(R.id.ipl_imageview);
viewholder.backGroundLayout = (RelativeLayout) convertView.findViewById(R.id.ipl_bk_layout);
viewholder.productName = (TextView) convertView.findViewById(R.id.ipl_productname);
convertView.setTag(viewholder);
} else {
viewholder = (ViewHolder) convertView.getTag();
}
viewholder.productName.setText("SOME TEXT");
String imageUrl = "SOME URL";
imageLoader.get(imageUrl, VALUES_FOR_MY_IMAGE_LOADER_LIBRARY));
return convertView;
}
我在网上尝试了不同的建议方法,但没有任何效果,因为我有动态图像加载,并且在调用 getView 时不知道 imageView layoutParams。
【问题讨论】:
-
为什么不固定
ImageView的高度和宽度? -
不,我不能;我必须将 GridView 宽度保持为 Fill 父级;网格视图中有 2 列。所以我不知道确切的高度[即高度 = 宽度]
-
你只需要固定图像的高度。
-
高度应该和宽度完全一样【宽度是动态的,不同屏幕会有所不同】
-
@AabidMulani 然后制作
ImageViewandroid:scaleType="fitXY"
标签: android android-layout gridview android-listview