美好的一天。我有一个如下所示的布局代码
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:fillViewport="true" >
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
tools:context=".MainActivity">
<include
android:id="@+id/toolbar"
layout="@layout/app_bar" />
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="165dp"
android:layout_below="@+id/toolbar" />
<RelativeLayout
android:id="@+id/relativeLayout"
android:layout_width="match_parent"
android:layout_height="25dp"
android:layout_alignBottom="@id/viewpager"
android:background="#33000000">
<TextView
android:id="@+id/tv_image_description"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:paddingLeft="10dp"
android:text="Shop Name"
android:textColor="#FFF" />
<LinearLayout
android:id="@+id/ll_point_group"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:orientation="horizontal"
android:paddingRight="10dp">
</LinearLayout>
</RelativeLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/cardList"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@+id/relativeLayout" />
</RelativeLayout>
</ScrollView>
我已将recyclerview与数据列表相关联,但为什么RecyclerView Layout可滚动但不是整个Relativelayout。我用ScrollView包装了RelativeLayout。它似乎不起作用。请参阅下面的图片
如果你们有更好的解决方案,请告诉我。亿万谢谢。
答案 0 :(得分:1)
将RelativeLayout
高度更改为wrap_content
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
tools:context=".MainActivity">
答案 1 :(得分:1)
您已在另一个中添加了一个滚动组件 - Scrollview中的RecycleView 所以只有一个人会关注。这是针对Android指南的。你永远不应该把一个滚动组件放在另一个组件中。 但要实现两个滚动
yourRecycleView.setOnTouchListener(new OnTouchListener() {
// Setting on Touch Listener for handling the touch inside ScrollView
@Override
public boolean onTouch(View v, MotionEvent event) {
// Disallow the touch request for parent scroll on touch of child view
v.getParent().requestDisallowInterceptTouchEvent(true);
return false;
}
});