我的项目有问题,当我移动列表时,它也会移动部件到达,这会占用屏幕上的空间,我希望它在列表移动时消失并在漫步时显示在到达的部分,非常感谢你!很抱歉翻译,但是有翻译。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.app.flyforo.MainActivity" >
<LinearLayout
android:id="@+id/contentUser"
android:layout_width="fill_parent"
android:layout_height="90dp"
android:background="@drawable/banner" >
<ImageView
android:id="@+id/imageUser"
android:layout_width="80dp"
android:layout_height="60dp"
android:layout_marginLeft="20dp"
android:layout_marginTop="10dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/userName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:text="Flyforo"
android:textColor="#fff"
android:textSize="11sp" />
<TextView
android:id="@+id/userTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginLeft="-40dp"
android:layout_marginRight="28dp"
android:layout_marginTop="20dp"
android:text="Flyforo"
android:textColor="#fff"
android:textSize="17sp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:id="@+id/contentSeguidores"
android:layout_width="wrap_content"
android:layout_height="50dp"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/contentUser" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="0.74"
android:background="#FBFBFB"
android:orientation="vertical" >
<TextView
android:id="@+id/numseguidores"
android:layout_width="215dp"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:gravity="center"
android:text="4"
android:textSize="17sp"
android:textStyle="bold" />
<TextView
android:layout_width="215dp"
android:layout_height="wrap_content"
android:layout_marginTop="-5dp"
android:gravity="center"
android:text="Seguidores"
android:textSize="13sp" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/menu"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/contentSeguidores"
>
<LinearLayout
android:layout_width="160dp"
android:layout_height="match_parent"
android:background="@drawable/border2"
android:orientation="vertical" >
<TextView
android:id="@+id/buttoninicio"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Inicio"
android:textSize="17sp" />
</LinearLayout>
<LinearLayout
android:layout_width="160dp"
android:layout_height="match_parent"
android:background="@drawable/border2"
android:orientation="vertical" >
<TextView
android:id="@+id/buttonposts"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="17sp"
android:text="Posts" />
</LinearLayout>
</LinearLayout>
<ProgressBar
android:id="@+id/loading"
style="?android:attr/progressBarStyleLarge"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:indeterminate="true" />
<Button
android:id="@+id/button1"
android:layout_width="50dp"
android:layout_height="35dp"
android:layout_alignParentRight="true"
android:layout_below="@+id/contentUser"
android:layout_marginRight="10dp"
android:drawableLeft="@drawable/ic_action_add_person"
android:layout_marginTop="7dp"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="#fff"
android:background="@drawable/button_confirm"
android:text="" />
<ListView
android:id="@+id/profileList"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/menu"
>
</ListView>
</RelativeLayout>
答案 0 :(得分:0)
我不确定你想要什么。但我将布局更改为线性布局。然后做了一些额外的改变。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="com.app.flyforo.MainActivity" >
<LinearLayout
android:id="@+id/contentUser"
android:layout_width="fill_parent"
android:layout_height="90dp"
>
<ImageView
android:id="@+id/imageUser"
android:layout_width="80dp"
android:layout_height="60dp"
android:layout_marginLeft="20dp"
android:layout_marginTop="10dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/userName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:text="Flyforo"
android:textColor="#fff"
android:textSize="11sp" />
<TextView
android:id="@+id/userTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginLeft="-40dp"
android:layout_marginRight="28dp"
android:layout_marginTop="20dp"
android:text="Flyforo"
android:textColor="#fff"
android:textSize="17sp"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:id="@+id/contentSeguidores"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/contentUser" android:orientation="horizontal">
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_weight="1">
<TextView
android:id="@+id/numseguidores"
android:layout_width="215dp"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:gravity="center"
android:text="4"
android:textSize="17sp"
android:textStyle="bold" />
<TextView
android:layout_width="215dp"
android:layout_height="wrap_content"
android:layout_marginTop="-5dp"
android:gravity="center"
android:text="Seguidores"
android:textSize="13sp" />
</LinearLayout>
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentRight="true"
android:layout_below="@+id/contentUser"
android:layout_marginRight="10dp"
android:layout_marginTop="7dp"
android:textSize="14sp"
android:textStyle="bold"
android:textColor="#fff"
android:text="" />
</LinearLayout>
<LinearLayout
android:id="@+id/menu"
android:layout_width="match_parent"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_below="@+id/contentSeguidores"
>
<TextView
android:id="@+id/buttoninicio"
android:layout_width="0dp"
android:layout_height="match_parent"
android:gravity="center"
android:text="Inicio"
android:textSize="17sp" android:layout_weight="1"/>
<TextView
android:id="@+id/buttonposts"
android:layout_width="0dp"
android:layout_height="match_parent"
android:gravity="center"
android:textSize="17sp"
android:text="Posts" android:layout_weight="1"/>
</LinearLayout>
<ListView
android:id="@+id/profileList"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/menu"
>
</ListView>
</LinearLayout>
答案 1 :(得分:0)
我想你的意思是你的内容高于 ListView,当你滚动ListView时,你希望它上面的内容也滚动到屏幕上。如果这是描述您的问题,请继续阅读!
您希望将ListView上的内容包装在自己的XML文件中,将其作为单个ViewGroup充气,然后将该ViewGroup添加为ListView上的标题。
您的视图层次结构如下所示:
RelativeLayout
LinearLayout=contentUser
LinearLayout=contentSeguidores
LinearLayout=menu
ProgressBar
Button
ListView
/RelativeLayout
如果它位于名为activity_list.xml
的文件中,则可以将内容复制到布局目录中名为view_list_header.xml
的另一个文件中。在这个复制的文件中,删除ListView,并在activity_list.xml
中删除除ListView之外的所有内容,以便文件结构如下:
activity_list.xml
:
<ListView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/profileList"
android:layout_width="match_parent"
android:layout_height="match_parent" />
和view_list_header.xml
:
RelativeLayout
LinearLayout=contentUser
LinearLayout=contentSeguidores
LinearLayout=menu
ProgressBar
Button
/RelativeLayout
在您的活动中,或者在您设置ListView的任何地方,您都会遇到类似的内容:
...
setContentView(R.layout.activity_list);
ListView listView = (ListView) findViewById(R.id.profileList);
listView.setAdapter(...);
...
现在,您需要对标头进行充气,并在设置适配器之前将其添加到ListView :
...
setContentView(R.layout.activity_list);
ListView listView = (ListView) findViewById(R.id.profileList);
View headerView = getLayoutInflater().inflate(R.layout.view_header_list, listView, false);
listView.addHeaderView(headerView);
listView.setAdapter(...);
...