2016-09-17 176 views
0

我已經通過this & this SO問題,但無法弄清楚爲什麼我的列表視圖的第一項不可見。我檢查了數組列表的大小,它是正確的。Android ListView不顯示第一項

  1. 如果有2項則它僅示出了1
  2. 如果有1個項目則顯示爲0。

列表視圖的文件:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent"> 

    <ListView 
     android:id="@+id/videoListView" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:divider="@null" 
     android:dividerHeight="0dp" /> 

</RelativeLayout> 

列表視圖項xml文件:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:paddingTop="10dp"> 

    <ImageView 
     android:layout_width="150dp" 
     android:layout_height="90dp" 
     android:id="@+id/videoImageView" 
     android:layout_marginLeft="10dp" 
     android:layout_alignParentTop="true" 
     android:layout_alignParentLeft="true" 
     /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="35dp" 
     android:id="@+id/titleTextView" 
     android:layout_marginRight="10dp" 
     android:layout_toRightOf="@+id/videoImageView" 
     android:layout_marginLeft="10dp" 
     android:textSize="12sp" 
     android:textColor="#000000" 
     android:ellipsize="end" 
     android:maxLines="2" 
     /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="20dp" 
     android:id="@+id/timeTextView" 
     android:layout_alignStart="@+id/titleTextView" 
     android:layout_alignLeft="@+id/titleTextView" 
     android:layout_below="@+id/titleTextView"/> 

    <ImageView 
     android:layout_width="25dp" 
     android:layout_height="25dp" 
     android:id="@+id/downloadImageView" 
     android:layout_alignStart="@+id/timeTextView" 
     android:layout_alignLeft="@+id/timeTextView" 
     android:layout_below="@+id/timeTextView" 
     android:layout_alignBottom="@+id/videoImageView" 
     android:src="@drawable/ic_vector_download" 
     android:layout_marginTop="5dp"/> 

    <ProgressBar 
     android:layout_width="25dp" 
     android:layout_height="25dp" 
     android:id="@+id/downloadProgressBarView" 
     android:layout_alignStart="@+id/timeTextView" 
     android:layout_alignLeft="@+id/timeTextView" 
     android:layout_below="@+id/timeTextView" 
     android:layout_alignBottom="@+id/videoImageView" 
     android:layout_marginTop="5dp" 
     android:visibility="gone"/> 

    <ImageView 
     android:layout_width="25dp" 
     android:layout_height="25dp" 
     android:id="@+id/shareImageView" 
     android:layout_below="@+id/timeTextView" 
     android:layout_alignBottom="@+id/videoImageView" 
     android:layout_toRightOf="@+id/downloadImageView" 
     android:layout_marginTop="5dp" 
     android:layout_marginLeft="7dp" 
     android:src="@drawable/ic_vector_share"/> 
</RelativeLayout> 

adapter cla SS:

public class OfflineVideoAdapter extends ArrayAdapter<OfflineVideo> { 

    Context context; 
    OfflineVideoDBHelper db; 
    List<OfflineVideo> list; 

    public OfflineVideoAdapter(Context context, int resource, List<OfflineVideo> list) { 
     super(context, resource, list); 
     this.context = context; 
     this.list = list; 
    } 

    @NonNull 
    @Override 
    public View getView(final int position, View convertView, ViewGroup parent) { 
     final OfflineVideoHolder holder; 
     if (convertView == null) { 
      holder = new OfflineVideoHolder(); 
      convertView = LayoutInflater.from(context).inflate(R.layout.video_list_item, parent, false); 
      holder.video = (ImageView)convertView.findViewById(R.id.videoImageView); 
      holder.title = (TextView)convertView.findViewById(R.id.titleTextView); 
      holder.publishedAt = (TextView)convertView.findViewById(R.id.timeTextView); 
      holder.delete = (ImageView)convertView.findViewById(R.id.downloadImageView); 
      holder.share = (ImageView)convertView.findViewById(R.id.shareImageView); 
      convertView.setTag(holder); 
     } else { 
      holder = (OfflineVideoHolder)convertView.getTag(); 
     } 
     final OfflineVideo offlineVideo = getItem(position); 
     Picasso.with(context).load(offlineVideo.imageURL).into(holder.video); 
     holder.title.setText(offlineVideo.title); 
     holder.publishedAt.setText(CommonUtils.calculateTime(offlineVideo.publishedAt)); 
     holder.delete.setImageResource(R.drawable.ic_vector_delete); 
     return convertView; 
    } 
} 
+1

試圖改變列表視圖hiegth和寬度「match_parent」 – Kintanpatel

+1

檢查工具欄是否不明白的列表視圖,第一項 – siddhesh

+0

@Kintanpatel重疊,我改變了HIGHT和寬度,但仍然無法正常工作。 –

回答

2

工具欄檢查是否不得到重疊的列表視圖,第一項