java - Android单列Gridview

标签 java android android-layout android-imageview android-gridview

我正在制作一个简单的壁纸应用程序,我有一些非常高分辨率的图像。我想知道是否可以制作一个单列 GridView ,其中每个图像 100% 适合设备的宽度。下图显示了我想要的示例。

What i want the gridview to look like

这是我的 xml 代码:

     <GridView
     android:id="@+id/gridView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
     android:columnWidth="90dp"
     android:numColumns="auto_fit"
     android:verticalSpacing="10dp"
     android:horizontalSpacing="10dp"
     android:gravity="center"
     >
   </GridView>

这是我的图像的 java 代码:

        // create a new ImageView for each item referenced by the Adapter
    public View getView(int position, View convertView, ViewGroup parent) {
        final int p = position;
        ImageView imageView;
        if (convertView == null) {  // if it's not recycled, initialize some attributes
            imageView = new ImageView(mContext);
            imageView.setLayoutParams(new GridView.LayoutParams(150, 150));
            imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
            imageView.setPadding(2, 2, 2, 2);
        } else {
            imageView = (ImageView) convertView;
        }

最佳答案

您可以将 numCols 设置为 1。

android:numColumns="1"

<GridView
    android:id="@+id/gridView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:columnWidth="90dp"
    android:numColumns="auto_fit"
    android:verticalSpacing="10dp"
    android:horizontalSpacing="10dp"
    android:gravity="center"
    >
</GridView>

您还可以引用Gallery-like Single column Gridview 。希望这会有所帮助。

关于java - Android单列Gridview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25604454/

相关文章:

android - webkit-box-reflect android 上的错误

android - 他们是如何制作这样的布局的——他们使用了哪些元素?

Android - 如何定义可配置的大小形状

java - 使 EditText 字段不可编辑

android - 如何在android中获取json数组值?

java - 在 AutoCompleteTextView 中单击应用程序名称时显示包名称

java - 关于 LinkedBlockingQueue,需要澄清

java - 线程中出现异常 "main"错误

java - 如何使用Java对文本文件中的数据进行排序?第 2 卷

java - 为什么 tagged 或 Marker 接口(interface)会被 JVM 特殊对待