liseview setSelection()无效,在线程里刷新一样无效

山城忙碌人 2015-08-24 05:31:59
1 需求描述
类似微信相册里的详细内容。用户点击listview里的其中一条数据。软键盘弹出,listview重新定位到被点击的数据下方。详见下图

目前实现的效果是listview无法定位,我测试发现是listview外嵌套了ScrollView.,实际需求又无法取消ScrollView,不然滑动的时候,相册内容无法随着listview滑动而向上滑动。当然listview的head加view也是一种办法,但评论的背景图片又加不上去

2:布局如下

<?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="fill_parent"
android:background="@color/WHITE" >

<!-- title -->

<fragment
android:id="@+id/titleFragment"
android:name="fragment.TitleFragment"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true" />

<ScrollView
android:id="@+id/containerBox"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/titleFragment"
android:fillViewport="true"
android:orientation="vertical"
android:paddingBottom="60dip"
android:scrollbars="vertical" >

<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content" >

<!-- 头像 -->

<ImageView
android:id="@+id/adHeader"
android:layout_width="44dip"
android:layout_height="44dip"
android:layout_marginLeft="12dip"
android:layout_marginTop="10dip"
android:src="@drawable/login_default_avatar" />
<!-- 相册内容 -->

<LinearLayout
android:id="@+id/contentRightBox"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignTop="@id/adHeader"
android:layout_marginLeft="5dip"
android:layout_marginRight="12dip"
android:layout_toRightOf="@id/adHeader"
android:orientation="vertical" >

<TextView
android:id="@+id/adUserName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="张三 分享了一个链接"
android:textColor="@color/tsName"
android:textSize="16dip" />

<TextView
android:id="@+id/adTitle"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dip"
android:text="这是详细内容的标题,没有时可以为空"
android:textColor="@color/black"
android:textSize="14dip" />

<LinearLayout
android:id="@+id/contentType1Box"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dip"
android:background="@color/eee"
android:orientation="horizontal"
android:padding="5dip" >

<ImageView
android:id="@+id/articlePicture"
android:layout_width="50dip"
android:layout_height="50dip"
android:src="@drawable/header1" />

<TextView
android:id="@+id/articleTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dip"
android:text="分享文章的标题"
android:textColor="@color/black"
android:textSize="14dip" />
</LinearLayout>

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dip"
android:orientation="vertical" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dip"
android:text="动态添加图片,还没确定布局,先展示一张图片"
android:textColor="@color/black"
android:textSize="10dip" />

<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/icon_007_cover" />
</LinearLayout>

<RelativeLayout
android:id="@+id/replyOperationBox"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="5dip" >

<TextView
android:id="@+id/replyDate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_gravity="center"
android:text="3月1日"
android:textColor="@color/pcWxName"
android:textSize="12dip" />

<TextView
android:id="@+id/removeContent"
android:layout_width="40dip"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/replyDate"
android:gravity="center_horizontal"
android:text="删除"
android:textColor="@color/tsName"
android:textSize="12dip" />

<ImageView
android:id="@+id/operationBox"
android:layout_width="35dip"
android:layout_height="25dip"
android:layout_alignParentRight="true"
android:layout_gravity="right"
android:background="@drawable/tsq_reply" />
</RelativeLayout>
</LinearLayout>
<!-- 评论的listview -->
<ListView
android:id="@+id/replyListView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:divider="@color/devide_line"
android:dividerHeight="1dip"
android:listSelector="@color/transparent" >
</ListView>

</RelativeLayout>
</ScrollView>
<!-- 评论输入框 -->
<include
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
layout="@layout/custom_facerelativelayout" />

</RelativeLayout>



请问在ScrollView里面listview 如何定位,或者实现微信相册,详细内容加评论有没有更好的布局方式。
目前我也想把详细内容写到一个view中,用listview.addhead()去加,但这样来,listview的背景又无法实现。难道在adapter动态设置item的背景?
...全文
182 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
chaozhidan 2016-08-04
  • 打赏
  • 举报
回复
楼主解决了没,我也遇到同样的问题了
山城忙碌人 2016-05-18
  • 打赏
  • 举报
回复
谁回分就给谁!

80,471

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧