使用ListFragment显示项目列表时,布局显示不正确

时间:2014-09-13 14:54:36

标签: android android-layout

Android Studio 0.8.10

我正在使用ListFragment来显示图像和文本。但是,由于某种原因,每条记录之间有很大的空间。 一个记录包括图像,标题。下一个应该从那里开始。但是,每个之间有一个很大的空间,我必须向下滚动才能到达下一个。 LinearLayout高度由内容包装。

照片和标题应该相互跟随,应该没有空间。

这是我将在ListFragment中显示的布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/backgroundlist"
    android:orientation="vertical">

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="10dp">

        <ImageView
            android:id="@+id/ivImage"
            android:layout_width="match_parent"
            android:layout_height="180dp"
            android:contentDescription="Picture of newsfeed"
            android:layout_marginTop="4dp"
            android:scaleType="fitXY"/>

        <TextView
            android:id="@+id/tvTitle"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_below="@id/ivImage"
            android:textSize="30sp"
            android:textColor="#ffffff"/>
    </RelativeLayout>
</LinearLayout>

我的getView函数,但我没有看到问题,所有数据都被检索好了:

private class NewsFeedAdapter extends ArrayAdapter<NewsFeed> {
        public NewsFeedAdapter(ArrayList<NewsFeed> newsFeedArrayList) {
            super(getActivity(), 0, newsFeedArrayList);
        }

        @Override
        public View getView(int position, View convertView, ViewGroup parent) {

            if(convertView == null) {
                convertView = getActivity().getLayoutInflater().inflate(R.layout.fragment_listfott, null);
            }

            NewsFeed newsFeed = getItem(position);
            mIvImage = (ImageView)convertView.findViewById(R.id.ivImage);
            mTvTitle = (TextView)convertView.findViewById(R.id.tvTitle);

            Drawable drawable = new BitmapDrawable(getResources(), newsFeed.getImage());
            mIvImage.setImageDrawable(drawable);
            mTvTitle.setText(newsFeed.getTitle());

            return convertView;
        }
    }

这是我滚动到下一条记录的照片: enter image description here

下一个有很大的空间,必须向下滚动才能看到它。 enter image description here

1 个答案:

答案 0 :(得分:0)

我缩小了背景图片的实际尺寸,因为它太大了。