android - 带有recyclerview的滚动视图内的滚动视图不滚动
问题描述
我使用了一个父滚动视图,并且我使用了带有两个回收器视图的子滚动视图。我已经使用了很多解决方案将滚动应用于子滚动视图,但无法做到这一点。
主要布局如下
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/bid_root_rl"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background_color">
<include
android:id="@+id/appbar"
layout="@layout/toolbar" />
<TextView
android:id="@+id/txt_msg"
style="@style/error_textview_style"
android:layout_below="@+id/appbar" />
<ScrollView
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@+id/llLast"
android:layout_below="@+id/txt_msg"
android:fillViewport="true"
android:fitsSystemWindows="true"
android:scrollbarThumbVertical="@drawable/scrollbar_thumb_color">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<LinearLayout
android:id="@+id/ll1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:weightSum="1">
<RelativeLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0.5"
android:background="@color/color_wallet_background"
android:padding="@dimen/dimen_10dp">
<TextView
android:id="@+id/tvBTCWalletBalance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dimen_2dp"
android:layout_marginStart="@dimen/dimen_2dp"
android:layout_toEndOf="@id/ic_deposit"
android:layout_toRightOf="@id/ic_deposit"
android:text="09999"
android:textColor="@color/white"
android:textSize="@dimen/textSizeInvoiceBuy"
android:textStyle="bold" />
<com.ebitcoinics.ebitcoinicsapp.customview_virtual_currency.CustomVirtualCurrencyImageViewWhiteColor
android:id="@+id/localImageView"
android:layout_width="@dimen/imageSizeTooSmallBTCLogoForMin"
android:layout_height="@dimen/imageSizeTooSmallBTCLogoForMin"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dimen_2dp"
android:layout_marginStart="@dimen/dimen_2dp"
android:layout_toEndOf="@id/tvBTCWalletBalance"
android:layout_toRightOf="@id/tvBTCWalletBalance" />
<ImageView
android:id="@+id/ic_deposit"
android:layout_width="@dimen/imageSizeTooSmallBTCLogoForMin"
android:layout_height="@dimen/imageSizeTooSmallBTCLogoForMin"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dimen_2dp"
android:layout_marginStart="@dimen/dimen_2dp"
android:src="@drawable/ic_deposit" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dimen_2dp"
android:layout_marginStart="@dimen/dimen_2dp"
android:layout_toEndOf="@+id/localImageView"
android:layout_toRightOf="@+id/localImageView"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="("
android:textColor="@color/white"
android:textSize="@dimen/bid_ask_current_trades_size"
android:textStyle="bold" />
<TextView
android:id="@+id/tvPriceAsPerBuy"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/dimen_2dp"
android:layout_marginStart="@dimen/dimen_2dp"
android:textColor="@color/white"
android:textSize="@dimen/bid_ask_current_trades_size"
android:textStyle="bold" />
<com.ebitcoinics.ebitcoinicsapp.customview_local_currency.CustomLocalCurrencyImageViewWhiteColor
android:id="@+id/imgLocalCurrencyAsPerWallet"
android:layout_width="@dimen/imageSizeTooSmallBTCLogoForMin"
android:layout_height="@dimen/imageSizeTooSmallBTCLogoForMin"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/dimen_2dp"
android:layout_marginStart="@dimen/dimen_2dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="@dimen/dimen_2dp"
android:layout_marginStart="@dimen/dimen_2dp"
android:text=")"
android:textColor="@color/white"
android:textSize="@dimen/bid_ask_current_trades_size"
android:textStyle="bold" />
</LinearLayout>
</RelativeLayout>
<View
android:layout_width="@dimen/dimen_1dp"
android:layout_height="match_parent"
android:background="@color/white" />
<LinearLayout
android:id="@+id/txt_buy_info_ll2"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="0.5"
android:background="@color/color_wallet_background"
android:padding="@dimen/dimen_10dp">
<include
android:id="@+id/ll_buy_info"
layout="@layout/include_layout_buy_new" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ll1"
android:layout_margin="@dimen/dimen_10dp"
android:orientation="vertical">
<LinearLayout
android:id="@+id/ll2"
android:layout_width="match_parent"
android:layout_height="wrap_content">
<include
android:id="@+id/llTop"
layout="@layout/common_edittext_header_for_bid_ask_new" />
</LinearLayout>
<include
android:id="@+id/activity_market_rates"
layout="@layout/activity_market_rates_inner_layout_ask"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</LinearLayout>
</RelativeLayout>
</ScrollView>
<LinearLayout
android:id="@+id/llLast"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:orientation="vertical">
<TextView
android:id="@+id/txt1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/ask_rules"
android:textColor="@color/white"
android:textSize="@dimen/textSizeTooMin" />
<TextView
android:id="@+id/txtMsgBidAsk"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dimen_5dp"
android:gravity="center"
android:text="@string/BidAskMsg"
android:textColor="@color/white"
android:textSize="@dimen/textSizeTooMin"
android:textStyle="italic" />
<android.support.v7.widget.AppCompatButton
android:id="@+id/btn_ask"
style="@style/button_style"
android:layout_marginBottom="@dimen/dimen_10dp"
android:layout_marginLeft="@dimen/dimen_10dp"
android:layout_marginRight="@dimen/dimen_10dp"
android:text="@string/ask" />
</LinearLayout>
</RelativeLayout>
activity_market_rates_inner_layout_ask.xml 如下所示
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/rlTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="@dimen/dimen_3dp"
android:orientation="horizontal"
android:weightSum="1">
<ProgressBar
android:id="@+id/progressBar"
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.1"
android:background="@drawable/progress_drawable"
android:indeterminate="false"
android:max="100"
android:visibility="invisible" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="0.9"
android:orientation="horizontal">
<TextView
android:id="@+id/txtLocal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:text="@string/localPrice"
android:textColor="@color/white"
android:textSize="@dimen/bid_ask_current_trades_size" />
<TextView
android:id="@+id/txtVirtual"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:text="@string/localPrice"
android:textColor="@color/white"
android:textSize="@dimen/bid_ask_current_trades_size" />
<TextView
android:id="@+id/txtRate"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center_horizontal"
android:text="@string/ratePrice"
android:textColor="@color/white"
android:textSize="@dimen/bid_ask_current_trades_size" />
</LinearLayout>
</LinearLayout>
<RelativeLayout
android:id="@+id/rlProgress"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/rlTitle"
android:layout_gravity="center"
android:visibility="gone">
<ProgressBar
android:id="@+id/progressBar2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:background="@drawable/progress_color"
android:indeterminate="true" />
</RelativeLayout>
<ScrollView
android:id="@+id/scrollViewChild"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/rlTitle"
android:fillViewport="true"
android:fitsSystemWindows="true"
android:scrollbarThumbVertical="@drawable/scrollbar_thumb_color">
<LinearLayout
android:id="@+id/llRV"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.v7.widget.RecyclerView
android:id="@+id/rvSell"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<android.support.v7.widget.RecyclerView
android:id="@+id/rvBuy"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dimen_5dp" />
</LinearLayout>
</ScrollView>
这里我想滚动scrollViewChild
,我用过
rvSell.setNestedScrollingEnabled(false);
rvBuy.setNestedScrollingEnabled(false);
但是只有父滚动视图在滚动而不是子滚动。
解决方案
在您的内部 xml 中,尝试:
<android.support.v7.widget.RecyclerView
android:id="@+id/rvSell"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:overScrollMode="never"/>
<android.support.v7.widget.RecyclerView
android:id="@+id/rvBuy"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dimen_5dp"
android:nestedScrollingEnabled="false"/>
推荐阅读
- reactjs - 反应 useMemo 缺少依赖项
- kettle - 如何批量 Xbase 输入在水壶中使用一项而不是多项
- gpu - 如何在谷歌 colab 中设置 theano 标志?
- python - Tensorflow 2.0 对象检测训练错误 - 加载检查点错误
- prolog - 使用“库(聚合)”计算两个序列中匹配元素的复杂性
- hana - SAP - 查看 SE16 中的所有表条目以获取带有数字键的表
- css - figcaption 问题中的响应式头像
- java - 调度定时器任务
- javascript - 合并所有具有相同名称的对象并添加其值
- drupal - 按分类过滤内容类型的 Drupal 块