如何在json填充的列表视图之间添加图像视图?

时间:2015-10-15 22:40:55

标签: android json listview

我需要在listview

之间添加图片视图

我们可以申请特定职位,例如

if(position == 10){


}

但是在这种情况下,在第10个位置JSON数据将不会被填充,所以还有其他方法可以实现吗?

1 个答案:

答案 0 :(得分:0)

列表视图是任意布局。我建议制作一个包含通常“消失”的图像视图的布局,并仅在您的“10”情况下显示。您还可以在listview项目布局中使用ViewSwitcher。

创建一个listview_item.xml,如下所示:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
   android:orientation="vertical">
  <TextView
    android:id="@+id/text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="You'll fill this in with json"/>
  <ImageView
    android:id="@+id/image"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:visibility="gone"
    android:contentDescription="only show this image in exception case"/>
</LinearLayout>

然后在你的适配器的onBind:

if(position == 10){
  view.findViewById(R.id.image).setVisibility(View.VISIBLE);
  view.findViewById(R.id.text).setVisibility(View.GONE);
} else {
  view.findViewById(R.id.image).setVisibility(View.GONE);
  TextView tv = (TextView) view.findViewById(R.id.text);
  tv.setText(jsonStrings[position]);
  tv.setVisibility(View.VISIBLE);
}