我需要在listview
之间添加图片视图我们可以申请特定职位,例如
if(position == 10){
}
但是在这种情况下,在第10个位置JSON数据将不会被填充,所以还有其他方法可以实现吗?
答案 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);
}