问题描述
我有一个布局的开始标记(父标签)的
<滚动视图
的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:layout_width =FILL_PARENT
机器人:layout_height =FILL_PARENT>
后来我有许多图像,TextView的,编辑文本和其他东西,最后一个列表视图。我已经定义列表视图的摄氏230dp为prescribed给我。事情是整个布局滚动不错,但列表视图中的内容不会单独滚动。这是怎样的XML看起来...
<滚动型
的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:layout_width =FILL_PARENT
机器人:layout_height =FILL_PARENT
>
< LinearLayout中的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:layout_width =FILL_PARENT
机器人:layout_height =FILL_PARENT
机器人:方向=垂直>
< TextView的Android的:layout_width =FILL_PARENT
机器人:layout_height =50dp
机器人:文本=BISCOOT
机器人:TEXTSIZE =25dp
机器人:背景=@可绘制/ item_bg_light
机器人:文字颜色=@机器人:彩色/白
机器人:重力=中心/>
< RelativeLayout的的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:方向=垂直机器人:layout_width =FILL_PARENT
机器人:layout_height =200dp机器人:后台=#FF000000>
< ImageSwitcher机器人:ID =@ + ID / switcher1机器人:layout_width =FILL_PARENT
机器人:layout_height =200dp
机器人:layout_alignParentLeft =真正的机器人:layout_alignParentRight =真正的>
< / ImageSwitcher>
<进度
机器人:ID =@ + ID / progressBar2
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT机器人:layout_centerHorizontal =真
/>
< ImageButton的机器人:ID =@ + ID / imageButton1机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT机器人:layout_alignParentRight =真
机器人:layout_centerVertical =真正的机器人:SRC =@机器人:可绘制/ ic_media_ff/>
< ImageButton的机器人:ID =@ + ID / imageButton2机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT机器人:layout_alignParentLeft =真
机器人:layout_alignTop =@ + ID / imageButton1机器人:SRC =@机器人:可绘制/ ic_media_rew/>
< / RelativeLayout的>
< TextView的Android的:layout_width =FILL_PARENT
机器人:layout_height =30dp
机器人:文本=最新的头条新闻
机器人:背景=@可绘制/ item_bg_light
机器人:文字颜色=@机器人:彩色/白
机器人:重力=中心/>
<进度
机器人:ID =@ + ID / progressBar1
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_gravity =中心/>
<的LinearLayout机器人:方向=垂直
机器人:layout_width =FILL_PARENT
机器人:layout_height =FILL_PARENT>
<的ListView
机器人:ID =@机器人:ID /列表
机器人:layout_width =FILL_PARENT
机器人:scrollbarFadeDuration =0
机器人:scrollbarStyle =outsideOverlay
机器人:smoothScrollbar =真
机器人:layout_height =260dp>
< / ListView控件>
< / LinearLayout中>
<! -
< TextView的Android的:layout_width =FILL_PARENT
机器人:layout_height =30dp
机器人:文本=海洛因在岩石
机器人:背景=@可绘制/ item_bg_light
机器人:文字颜色=@机器人:彩色/白
机器人:重力=中心/>
< RelativeLayout的的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:方向=垂直机器人:layout_width =FILL_PARENT
机器人:layout_height =200dp机器人:后台=#FF000000>
< ImageSwitcher机器人:ID =@ + ID / switcher2机器人:layout_width =FILL_PARENT
机器人:layout_height =200dp
机器人:layout_alignParentLeft =真正的机器人:layout_alignParentRight =真/>
< ImageButton的机器人:ID =@ + ID / imageButton3机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT机器人:layout_alignParentRight =真
机器人:layout_centerVertical =真正的机器人:SRC =@机器人:可绘制/ ic_media_ff/>
< ImageButton的机器人:ID =@ + ID / imageButton4机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT机器人:layout_alignParentLeft =真
机器人:layout_alignTop =@ + ID / imageButton1机器人:SRC =@机器人:可绘制/ ic_media_rew/>
< / RelativeLayout的>
- >
< TextView的Android的:layout_width =FILL_PARENT
机器人:layout_height =30dp
机器人:文本=看电影
机器人:背景=@可绘制/ item_bg_light
机器人:文字颜色=@机器人:彩色/白
机器人:重力=中心/>
< LinearLayout中的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:layout_width =FILL_PARENT
机器人:layout_height =100dp机器人:方向=横向
机器人:weightSum =6
>
< ImageView的
机器人:layout_height =100dp
机器人:layout_width =WRAP_CONTENT机器人:layout_weight =1
机器人:layout_marginLeft =2DP机器人:layout_marginRight =2DP
机器人:ID =@ + ID / watchmoviesimg1
/>
< ImageView的机器人:layout_height =100dp
机器人:layout_width =WRAP_CONTENT机器人:layout_weight =1
机器人:layout_marginLeft =2DP机器人:layout_marginRight =2DP
机器人:ID =@ + ID / watchmoviesimg2/>
< ImageView的机器人:layout_height =100dp机器人:layout_weight =1
机器人:layout_width =WRAP_CONTENT
机器人:layout_marginLeft =2DP机器人:layout_marginRight =2DP
机器人:ID =@ + ID / watchmoviesimg3/>
<进度
机器人:ID =@ + ID / progressBar3
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_gravity =中心/>
< ImageView的机器人:layout_height =100dp机器人:layout_weight =1
机器人:layout_width =WRAP_CONTENT
机器人:layout_marginLeft =2DP机器人:layout_marginRight =2DP
机器人:ID =@ + ID / watchmoviesimg4/>
< ImageView的机器人:layout_height =100dp机器人:layout_weight =1
机器人:layout_width =WRAP_CONTENT
机器人:layout_marginLeft =2DP机器人:layout_marginRight =2DP
机器人:ID =@ + ID / watchmoviesimg5/>
< ImageView的机器人:layout_height =100dp机器人:layout_weight =1
机器人:layout_width =WRAP_CONTENT
机器人:layout_marginLeft =2DP机器人:layout_marginRight =2DP
机器人:ID =@ + ID / watchmoviesimg6/>
< / LinearLayout中>
< LinearLayout中的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:layout_width =FILL_PARENT
机器人:layout_height =200dp
机器人:方向=垂直
>
< TextView的Android的:layout_width =FILL_PARENT
机器人:layout_height =30dp
机器人:文本=照片故事
机器人:背景=@可绘制/ item_bg_light
机器人:文字颜色=@机器人:彩色/白
机器人:重力=中心/>
<进度
机器人:ID =@ + ID / progressBar4
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_gravity =中心/>
< ImageView的
机器人:ID =@ + ID / photostoryimageview1
机器人:layout_height =200dp机器人:layout_weight =1
机器人:layout_width =FILL_PARENT
/>
< / LinearLayout中>
< LinearLayout中的xmlns:机器人=http://schemas.android.com/apk/res/android
机器人:layout_width =FILL_PARENT
机器人:layout_height =200dp
机器人:方向=垂直
>
< TextView的Android的:layout_width =FILL_PARENT
机器人:layout_height =30dp
机器人:文本=特星
机器人:背景=@可绘制/ item_bg_light
机器人:文字颜色=@机器人:彩色/白
机器人:重力=中心/>
<进度
机器人:ID =@ + ID / progressBar5
机器人:layout_width =WRAP_CONTENT
机器人:layout_height =WRAP_CONTENT
机器人:layout_gravity =中心/>
< ImageView的
机器人:ID =@ + ID / starSpecialimageView1
机器人:layout_height =200dp机器人:layout_weight =1
机器人:layout_width =FILL_PARENT
/>
< / LinearLayout中>
< / LinearLayout中>
< /滚动型>
简单地说,从布局删除滚动型
。而且,使的LinearLayout
父。而且,尝试运行你的应用程序。它将滚动列表。
由于该的ListView
类实现了自己的滚动,它只是不接收的手势,因为他们都被父处理滚动型
我强烈建议你以某种方式简化您的布局。例如,您可以添加要滚动到的ListView意见
的页眉或页脚。
看一看这个
更新
取一个父布局有两个孩子。而且,在一个版面它应该包含滚动型
您的内容。而且,在另一个布局包含您的的ListView
尝试像这个他做过类似的之一。
i have a layout whose starting tag(parent tag is ) is
<scroll view
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
later i have many images , textView , Edit text and other things, and finally a list view.i have defined the hight of listview as 230dp as prescribed to me.the thing is the whole layout is scrolling nice, but the content inside the listview is not scrolling individually . this is how the xml looks...
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView android:layout_width="fill_parent"
android:layout_height="50dp"
android:text="BISCOOT"
android:textSize="25dp"
android:background="@drawable/item_bg_light"
android:textColor="@android:color/white"
android:gravity="center"/>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="200dp" android:background="#ff000000">
<ImageSwitcher android:id="@+id/switcher1" android:layout_width="fill_parent"
android:layout_height="200dp"
android:layout_alignParentLeft="true" android:layout_alignParentRight="true" >
</ImageSwitcher>
<ProgressBar
android:id="@+id/progressBar2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_centerHorizontal="true"
/>
<ImageButton android:id="@+id/imageButton1" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_alignParentRight="true"
android:layout_centerVertical="true" android:src="@android:drawable/ic_media_ff" />
<ImageButton android:id="@+id/imageButton2" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/imageButton1" android:src="@android:drawable/ic_media_rew" />
</RelativeLayout>
<TextView android:layout_width="fill_parent"
android:layout_height="30dp"
android:text="Latest headLines"
android:background="@drawable/item_bg_light"
android:textColor="@android:color/white"
android:gravity="center"/>
<ProgressBar
android:id="@+id/progressBar1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />
<LinearLayout android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ListView
android:id="@android:id/list"
android:layout_width="fill_parent"
android:scrollbarFadeDuration="0"
android:scrollbarStyle="outsideOverlay"
android:smoothScrollbar="true"
android:layout_height="260dp">
</ListView>
</LinearLayout>
<!--
<TextView android:layout_width="fill_parent"
android:layout_height="30dp"
android:text="Heroin On the Rocks"
android:background="@drawable/item_bg_light"
android:textColor="@android:color/white"
android:gravity="center"/>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="200dp" android:background="#ff000000">
<ImageSwitcher android:id="@+id/switcher2" android:layout_width="fill_parent"
android:layout_height="200dp"
android:layout_alignParentLeft="true" android:layout_alignParentRight="true" />
<ImageButton android:id="@+id/imageButton3" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_alignParentRight="true"
android:layout_centerVertical="true" android:src="@android:drawable/ic_media_ff" />
<ImageButton android:id="@+id/imageButton4" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_alignParentLeft="true"
android:layout_alignTop="@+id/imageButton1" android:src="@android:drawable/ic_media_rew" />
</RelativeLayout>
-->
<TextView android:layout_width="fill_parent"
android:layout_height="30dp"
android:text="Watch Movies"
android:background="@drawable/item_bg_light"
android:textColor="@android:color/white"
android:gravity="center"/>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="100dp" android:orientation="horizontal"
android:weightSum="6"
>
<ImageView
android:layout_height="100dp"
android:layout_width="wrap_content" android:layout_weight="1"
android:layout_marginLeft="2dp" android:layout_marginRight="2dp"
android:id="@+id/watchmoviesimg1"
/>
<ImageView android:layout_height="100dp"
android:layout_width="wrap_content" android:layout_weight="1"
android:layout_marginLeft="2dp" android:layout_marginRight="2dp"
android:id="@+id/watchmoviesimg2"/>
<ImageView android:layout_height="100dp" android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_marginLeft="2dp" android:layout_marginRight="2dp"
android:id="@+id/watchmoviesimg3"/>
<ProgressBar
android:id="@+id/progressBar3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />
<ImageView android:layout_height="100dp" android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_marginLeft="2dp" android:layout_marginRight="2dp"
android:id="@+id/watchmoviesimg4"/>
<ImageView android:layout_height="100dp" android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_marginLeft="2dp" android:layout_marginRight="2dp"
android:id="@+id/watchmoviesimg5"/>
<ImageView android:layout_height="100dp" android:layout_weight="1"
android:layout_width="wrap_content"
android:layout_marginLeft="2dp" android:layout_marginRight="2dp"
android:id="@+id/watchmoviesimg6"/>
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="200dp"
android:orientation="vertical"
>
<TextView android:layout_width="fill_parent"
android:layout_height="30dp"
android:text="Photo Stories"
android:background="@drawable/item_bg_light"
android:textColor="@android:color/white"
android:gravity="center"/>
<ProgressBar
android:id="@+id/progressBar4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center" />
<ImageView
android:id="@+id/photostoryimageview1"
android:layout_height="200dp" android:layout_weight="1"
android:layout_width="fill_parent"
/>
</LinearLayout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="200dp"
android:orientation="vertical"
>
<TextView android:layout_width="fill_parent"
android:layout_height="30dp"
android:text="Star Special"
android:background="@drawable/item_bg_light"
android:textColor="@android:color/white"
android:gravity="center"/>
<ProgressBar
android:id="@+id/progressBar5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"/>
<ImageView
android:id="@+id/starSpecialimageView1"
android:layout_height="200dp" android:layout_weight="1"
android:layout_width="fill_parent"
/>
</LinearLayout>
</LinearLayout>
</ScrollView>
Simply, remove the ScrollView
from your layout. And, make the LinearLayout
as parent. And, try to run your app. It will scroll the list.
Because the ListView
class implements its own scrolling and it just doesn't receive gestures because they all are handled by the parent ScrollView
I strongly recommend you to simplify your layout somehow. For example you can add views you want to be scrolled to the ListView
as headers or footers.
Have a look at this
Update
Take one parent layout with two child. And, in one layout it should contain ScrollView
with your contents. And, on another layout contain your ListView
Try like this He has done like that one.
这篇关于Android的列表视图不滚动的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!