其他分享
首页 > 其他分享> > GridView布局文本填充问题和空白单元格

GridView布局文本填充问题和空白单元格

作者:互联网

我有一个GridView,文本单元格始终垂直填充,
此外,由于某些奇怪的原因,只有当RDA时,才显示属性Refer(可能是RDA或AI),AI似乎不可见(Refer列中的我的表没有空单元格).

请参阅此屏幕截图以更好地了解

使用此方法填充GridView

private void populateGrid(){
    Cursor c = dba.getNutriData():
    startManagingCursor(c);

    String[] from = new String[] { dba.Nutrient, dba.Intake, dba.Limit, dba.Refer};
    int[]   to = new int[] { R.id.txtNutrient, R.id.txtIntake, R.id.txtLimit, R.id.txtRefer};

    SimpleCursorAdapter sca = new SimpleCursorAdapter(this, R.layout.grid_row, c, from, to);

    grid.setAdapter(sca);
}

我使用此GridView布局

       <GridView
            android:id="@+id/tabellaDieta"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:fitsSystemWindows="false"
            android:gravity="start"
            android:numColumns="1"
            android:scrollingCache="true"
            android:stretchMode="columnWidth"
            android:textAlignment="textStart" >

        </GridView>

这是网格布局

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

<TableLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"
  >
  <TableRow android:layout_gravity="left">

  <TextView
      android:id="@+id/colNome"
      android:layout_width="50px"
      android:layout_height="wrap_content"
      android:layout_gravity="left"
      android:layout_weight="1"
      android:gravity="left|start"
      android:padding="5px"
      android:textColor="@color/white"
      android:textSize="12dp" />

  <TextView
      android:id="@+id/colDose"
      android:layout_width="50px"
      android:layout_height="wrap_content"
      android:layout_gravity="left"
      android:layout_weight="1"
      android:gravity="left|start"
      android:padding="5px"
      android:textColor="@color/greenlight"
      android:textSize="12dp" >

</TextView>

  <TextView
      android:id="@+id/colLimite"
      android:layout_width="50px"
      android:layout_height="wrap_content"
      android:layout_gravity="left"
      android:layout_weight="1"
      android:gravity="left|start"
      android:padding="5px"
      android:textColor="@color/orange"
      android:textSize="12dp" />

  <TextView
      android:id="@+id/colRiferimento"
      android:layout_width="50px"
      android:layout_height="wrap_content"
      android:layout_gravity="left"
      android:layout_weight="1"
      android:gravity="left|start"
      android:padding="5px"
      android:textColor="@color/light_sky"
      android:textSize="12dp" >

</TextView>

  </TableRow>
</TableLayout>

解决方法:

此android:layout_weight =“ 1”的值和android:padding =“ 5px”这行和android:numColumns =“ 1”的值很关键.

通过删除重量和填充线并增加列数进行测试

你也已经固定了textView的宽度android:layout_width =“ 50px”设置为WrapContent

标签:android-gridview,android-layout,android
来源: https://codeday.me/bug/20191031/1976273.html