【问题标题】:RelativeLayout within GridViewGridView 中的相对布局
【发布时间】:2014-07-17 08:27:38
【问题描述】:

我对此 XML 代码有疑问: 当我向下滚动时,看不到它们的项目将被删除。当我尝试向上滚动时,我再也无法接触到它们了。 但是,当我使用 id="rlButtons" 删除 RelativeLayout 时,一切都很好。

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="fill_parent" >

    <GridView
        android:id="@+id/gridview"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:gravity="center"
        android:horizontalSpacing="4dip"
        android:numColumns="4"
        android:padding="4dip"
        android:stretchMode="columnWidth"
        android:verticalSpacing="4dip" />

    <RelativeLayout
        android:id="@+id/rlButtons"
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:background="@color/transparent"
        android:visibility="gone"
        android:layout_alignParentBottom="true" >

        <Button
            android:id="@+id/favourite_button"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_alignParentRight="true"
            android:background="@android:color/transparent"
            android:gravity="bottom"
            android:text="Button2" />

        <Button
            android:id="@+id/favourite_button1"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_alignParentLeft="true"
            android:background="@android:color/transparent"
            android:gravity="bottom"
            android:text="Button1" />
    </RelativeLayout>
</RelativeLayout>

这是我的适配器:

public class PictureGridViewAdapter extends BaseAdapter {
  ICurrentAppData currentAppData = CurrentAppData.getInstance();
  private Activity activity;

  public PictureGridViewAdapter(Activity activity, ImageLoader imageLoader) {
    this.activity = activity;
  }

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

  @Override
  public Object getItem(int position) {
    return null;
  }

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

  @Override
  public View getView(int position, View convertView, ViewGroup parent) {
    final GridviewHodler holder;
    if (convertView == null) {
      LayoutInflater vi = (LayoutInflater) activity
          .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
      convertView = vi.inflate(R.layout.item_grid_image, null);
      holder = new GridviewHodler();
      holder.imageView = (ImageView) convertView.findViewById(R.id.image);
      holder.progressBar = (ProgressBar) convertView
          .findViewById(R.id.progress);
      convertView.setTag(holder);
    } else
      holder = (GridviewHodler) convertView.getTag();
    return convertView;
  }

有什么问题?

【问题讨论】:

    标签: android android-layout gridview adapter


    【解决方案1】:

    试试这个方法,希望能帮助你解决问题。

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">
        <GridView
            android:id="@+id/gridview"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:gravity="center"
            android:horizontalSpacing="4dp"
            android:numColumns="4"
            android:padding="4dp"
            android:stretchMode="columnWidth"
            android:verticalSpacing="4dp" />
        <LinearLayout
            android:id="@+id/rlButtons"
            android:layout_width="wrap_content"
            android:layout_height="50dp"
            android:background="@color/transparent"
            android:visibility="gone">
            <Button
                android:id="@+id/favourite_button1"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="match_parent"
                android:background="@android:color/transparent"
                android:gravity="bottom"
                android:text="Button1" />
            <Button
                android:id="@+id/favourite_button"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="match_parent"
                android:background="@android:color/transparent"
                android:gravity="bottom"
                android:text="Button2" />
        </LinearLayout>
    </LinearLayout>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-27
      • 2013-10-09
      • 1970-01-01
      相关资源
      最近更新 更多