我有一个列表视图。在这个列表视图中,我使用了显示在该布局下方的布局,我使用了一个默认的内部布局GONE,但是当我单击其他列表视图项目时,该布局可见,我想隐藏最后一次单击的布局。并且当前单击的项目布局仅像在列表视图中一样展开
线性亚马逊布局展开和展开
图 1
图 2 是错误的,目前看起来
图 3 我想要?
布局.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/linearamazondata"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/darkgray"
android:orientation="vertical"
android:padding="5dp" >
<LinearLayout
android:id="@+id/linearamazon"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@android:color/white"
android:orientation="horizontal"
android:weightSum="3" >
<LinearLayout
android:id="@+id/linearimage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/darkgray"
android:orientation="horizontal"
android:paddingRight="5dp">
<ImageView
android:id="@+id/imageviewhas"
android:layout_width="30dp"
android:layout_height="30dp"
android:layout_marginRight="5dp"
android:scaleType="fitXY" />
</LinearLayout>
<TextView
android:id="@+id/texttitle"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="1dp"
android:layout_marginLeft="1dp"
android:layout_marginRight="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/darkgray"
android:gravity="center"
android:paddingLeft="2dp"
android:paddingRight="2dp"
android:singleLine="true"
android:text="title"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textdescription"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="1dp"
android:layout_marginLeft="1dp"
android:layout_marginRight="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/darkgray"
android:gravity="center"
android:paddingLeft="2dp"
android:paddingRight="2dp"
android:singleLine="true"
android:text="description"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/textprice"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:layout_marginBottom="1dp"
android:layout_marginLeft="1dp"
android:layout_marginRight="1dp"
android:layout_marginTop="1dp"
android:layout_weight="1"
android:background="@color/darkgray"
android:gravity="center"
android:paddingLeft="2dp"
android:paddingRight="2dp"
android:singleLine="true"
android:text="price"
android:textColor="@android:color/white" />
</LinearLayout>
<LinearLayout
android:id="@+id/linearimageamazon"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_gravity="right"
android:padding="5dp"
android:visibility="gone" >
<Button
android:id="@+id/buttonreview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="25dp"
android:background="@drawable/review" />
<Button
android:id="@+id/buttonview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="25dp"
android:background="@drawable/icon" />
<Button
android:id="@+id/buttonaddproducts"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:background="@drawable/addproducts" />
</LinearLayout>
</LinearLayout>
惰性适配器中使用的短代码
holder.linearLayoutamazondata.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
if (holder.linearimageamazon.getVisibility() == View.VISIBLE)
{
holder.linearLayoutamazondata.setBackgroundResource(R.color.darkgray);
holder.linearimageamazon.setVisibility(View.GONE);
}
else
{
holder.linearLayoutamazondata.setBackgroundResource(R.color.cblack);
holder.linearimageamazon.setVisibility(View.VISIBLE);
}
}
});