java - Android GridView 让图像填满屏幕

标签 java android gridview

如何使 GridView 中的图像填满屏幕?

这是我的布局代码:

<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/grid_view"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_margin="10dp"
    android:padding="10dp"
    android:columnWidth="100dp"
    android:gravity="center"
    android:horizontalSpacing="10dp"
    android:numColumns="auto_fit"
    android:stretchMode="columnWidth"
    android:verticalSpacing="10dp" >
</GridView>

我将发布屏幕图片。

但它显示的图像很小并且没有使用整个屏幕。

这是我的适配器类:

public class MenuCategoryAdapter extends BaseAdapter {

    private GlobalObjects global;
    private Context mContext;

    // Keep all Objects in array
    public ArrayList<MenuCategory> categories = new ArrayList<MenuCategory>();

    // Constructor
    public MenuCategoryAdapter(Context c, GlobalObjects _global) {
        mContext = c;
        global = _global;

        JSONArray categoriesObj = getCategoriesFromServer();
        if (categoriesObj != null) {
            putCategoriesIntoArray(categoriesObj);
        } else {
            // Categories is null
            Log.e("ImageAdapter", " Categories is null");
        }
    }

    @Override
    public int getCount() {
        return categories.size();
    }

    @Override
    public Object getItem(int position) {
        return categories.get(position);
    }

    @Override
    public long getItemId(int position) {
        return 0;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        ImageView imageView = categories.get(position).getImg();
        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
        imageView.setLayoutParams(new GridView.LayoutParams(70, 70));
        return imageView;
    }
}

最佳答案

这是 GridView ,它将填满您的屏幕。这对我有用,做吧。如果发生任何错误,请立即通知我。

<?xml version="1.0" encoding="utf-8"?>

<GridView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/grid_view"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:numColumns="auto_fit"
    android:columnWidth="90dp"
    android:horizontalSpacing="5dp"
    android:verticalSpacing="5dp"
    android:gravity="center"
    android:stretchMode="columnWidth" >

    </GridView>

您还需要在您的 java 代码中进行编辑。 请将比例从 70,70 调整为 fill_parant

我还有它的示例应用程序。如果您需要它,请告诉我,我会为您上传。

关于java - Android GridView 让图像填满屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18274509/

相关文章:

android - GridView、GridLayout 和 Recycler View 与 GridLayout 有什么区别?

android - 屏蔽输入在android手机中不起作用?

android - 如何制作 AlertDialog 自定义按钮 android?

iphone - 支持不同大小单元格的 iOS GridView

java - textarea.getText() 在 Java 中无法正常工作

android - AppWidgetProvider 类中的调用 fragment

asp.net - 动态添加的链接按钮在单击按钮时消失,留下空列

java - JCombobox 和 JTextfield

java - Glassfish 中的 JNDI 查找失败

java - 静态字段 getResource