Android Listview内部RecyclerView滚动条工作不正常?

Android Listview内部RecyclerView滚动条工作不正常?,android,android-recyclerview,Android,Android Recyclerview,我正在使用RecyclerView,它将ListView作为列表项。 我正在为RecyclerView使用LinearLayoutManager。ListView有大量的数据可以水平和垂直滚动。 但在我的例子中,在纵向模式下,它停止垂直滚动,在横向模式下,它停止水平滚动。这一要求是不可能改变的。有什么建议来处理这个问题吗。我附加了我的代码的某些部分 清单项目: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/a

我正在使用RecyclerView,它将ListView作为列表项。 我正在为RecyclerView使用LinearLayoutManager。ListView有大量的数据可以水平和垂直滚动。 但在我的例子中,在纵向模式下,它停止垂直滚动,在横向模式下,它停止水平滚动。这一要求是不可能改变的。有什么建议来处理这个问题吗。我附加了我的代码的某些部分

清单项目:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/info_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center_horizontal"
android:elevation="5dp"
android:orientation="vertical"
android:visibility="visible">

<View
    android:id="@+id/line"
    android:layout_width="match_parent"
    android:layout_height="2px"
    android:background="@color/table_item_even" />

<ListView
    android:id="@+id/lst_info"
    android:layout_width="fill_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:divider="@null"
    android:dividerHeight="0dp"
    android:scrollbars="horizontal|vertical"
    android:transcriptMode="alwaysScroll"></ListView>

我忘了做下面的技巧。一个非常简单的重写方法保存了我的程序。我只关注RecyclerView而不是LayoutManager,这是一个错误

 layoutManager = new LinearLayoutManager(context){
        @Override
        public boolean canScrollVertically() {
            return false;
        }

        @Override
        public boolean canScrollHorizontally() {
            return false; 
        }
    };

我认为getResources().getConfiguration().orientation可能返回“错误”的方向。您何时调用它?可能尝试使用“Display getOrient=activity.getWindowManager().getDefaultDisplay();”获取显示。然后用显示器的高度和宽度构建if。@GAlexMES我想你不明白这个问题。如果定位的条件正常,你可以考虑一下。
 if (getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE) {
            layoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
        } else {
            layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
        }
 layoutManager = new LinearLayoutManager(context){
        @Override
        public boolean canScrollVertically() {
            return false;
        }

        @Override
        public boolean canScrollHorizontally() {
            return false; 
        }
    };