Android 使用视图在listView中添加分隔符
我正在使用视图向listview添加自定义分隔符。 我有一个问题,我想隐藏第一个列表项之前的分隔符。 有什么建议吗? 我不希望第一项上的分隔符(Akshay)可见 帮帮我。这是我的密码Android 使用视图在listView中添加分隔符,android,listview,Android,Listview,我正在使用视图向listview添加自定义分隔符。 我有一个问题,我想隐藏第一个列表项之前的分隔符。 有什么建议吗? 我不希望第一项上的分隔符(Akshay)可见 帮帮我。这是我的密码 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="5dip" >
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginTop="0dp"
android:background="@android:color/darker_gray"/>
<!-- ListRow Left side Thumbnail image -->
<LinearLayout
android:id="@+id/thumbnail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginRight="5dip"
android:padding="3dip" >
<ImageView
android:id="@+id/user_dp"
android:contentDescription="@string/app_name"
android:layout_width="60dip"
android:layout_height="60dip"
android:background="@drawable/ic_launcher"
/>
</LinearLayout>
<!-- Rightend Arrow -->
<ImageView
android:id="@+id/arrow"
android:contentDescription="@string/app_name"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:background="@drawable/arrow"
/>
<!--User's Name-->
<TextView
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/list_image"
android:layout_marginLeft="75dip"
android:layout_centerVertical="true"
android:paddingBottom ="10dip"
android:text="hhs"
android:textColor="#040404"
android:textSize="20dip"
android:textStyle="bold"
android:typeface="sans" />
<!-- chat-->
<TextView
android:id="@+id/chat"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/username"
android:layout_alignLeft="@+id/username"
android:paddingTop="5dip"
android:layout_centerHorizontal="true"
android:text="Hi how are you"
android:textColor="#343434"
android:textSize="15dip" />
</RelativeLayout>
为什么不试试这种定制分隔器的方法呢
if(childPosition==0)//is first child
{
YOURDIVIDER.setVisibility(View.GONE);
}
else
{
YOURDIVIDER.setVisibility(View.VISIBLE);
}
您需要检查单元格
在getView()
中的位置,因此您可以从代码中隐藏/显示自定义分隔符
if(childPosition==0)//is first child
{
YOURDIVIDER.setVisibility(View.GONE);
}
else
{
YOURDIVIDER.setVisibility(View.VISIBLE);
}
在执行此操作之前,您需要为此找到您的分隔器视图。为什么不尝试对自定义分隔器使用此方法
if(childPosition==0)//is first child
{
YOURDIVIDER.setVisibility(View.GONE);
}
else
{
YOURDIVIDER.setVisibility(View.VISIBLE);
}
<ListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/list"
android:dividerHeight="1px">
</ListView>
您需要检查单元格
在getView()
中的位置,因此您可以从代码中隐藏/显示自定义分隔符
if(childPosition==0)//is first child
{
YOURDIVIDER.setVisibility(View.GONE);
}
else
{
YOURDIVIDER.setVisibility(View.VISIBLE);
}
在执行此操作之前,您需要找到分隔器视图。
<ListView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/list"
android:dividerHeight="1px">
</ListView>
在自定义适配器类中,您可以在getView方法中将值设置为自定义布局 如果布局的位置为0,则检查布局的位置,然后根据您的要求设置其可见性消失或不可见
对于该对象,请创建分隔器的视图对象,并在自定义适配器类中设置其setVisibility()方法,您可以在getView方法中将值设置为自定义布局 如果布局的位置为0,则检查布局的位置,然后根据您的要求设置其可见性消失或不可见 为此,请创建分隔器视图的对象并设置其setVisibility()方法
android:layout_alignParentBottom="true"
而不是
android:layout_marginTop="0dp"
试一试
而不是
android:layout_marginTop="0dp"
您使用的是listview还是listfragment?对于api级别11+,您可以使用android:divider=“”和xml中的dividerHeight属性itself@IllegalArgument我知道。我想从左到右留边距,如果不添加此视图,这是不可能的。在这种情况下,请遵循@anuj answer,这肯定会起作用。您使用的是listview还是listfragment?对于api级别11+,您可以使用android:divider=”“和dividerHeight属性与xmlitself@IllegalArgument我知道。我想从左侧和右侧留边距,如果不添加此视图,这是不可能的。在这种情况下,请遵循@anuj answer,这肯定会起作用。我希望从左侧和右侧留边距,如上图所示。不可能这样,因为您必须使用自定义适配器并放置getview代码。我希望从左侧和右侧留边距,如上图所示。不是吗在这种情况下,您必须使用自定义适配器并输入getview代码。我希望您已删除ListView的默认分隔符。我已删除默认分隔符,但在上面的图片中都不可见。设置android:layout\u alignParentBottom=“true”,它将分隔符设置为底部,使分隔符也显示在最后一项之后@Anuj的soltn工作了。:)我希望你已经删除了ListView的默认分隔符我删除了默认分隔符,在上图中都不可见。设置android:layout\u alignParentBottom=“true”,它将分隔符设置为底部,使分隔符也显示在最后一项之后@Anuj的soltn工作了。:)