gpt4 book ai didi

android - RecyclerView 滚动条在 Android 的对话框 fragment 中不可见

转载 作者:太空宇宙 更新时间:2023-11-03 13:39:25 27 4
gpt4 key购买 nike

我有一个对话框 fragment ,其中有一个回收器 View 。我想在回收站 View 中添加一个滚动条。我添加了 scrollbars="vertical" 但它没有显示。我认为这个问题与主题有关。这是我的 xml:

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:padding="16dp"
tools:context="com.airxos.app.common.fragments.LayerSwitcherFragment">

<TextView
android:id="@+id/layer_list_title"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:fontFamily="sans-serif"
android:textSize="20sp"
android:textStyle="bold"
android:textColor="@color/black_87"
android:text="@string/layers"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />

<androidx.recyclerview.widget.RecyclerView
android:id="@+id/layer_list"
android:layout_marginTop="@dimen/margin_16"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/layer_list_title"
app:layout_constraintEnd_toEndOf="parent"
android:layout_height="0dp"
android:maxHeight="@dimen/info_window_height"
android:layout_width="match_parent"
android:nestedScrollingEnabled="true"
android:scrollbars="vertical"
android:background="@color/white"
android:scrollbarThumbVertical="@drawable/scrollbar"
android:scrollbarSize="5dp"
android:padding="5dp"
android:scrollbarStyle="insideInset"/>
</android.support.constraint.ConstraintLayout>

我正在限制对话框 fragment 的高度和宽度,如下所示:

@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
Objects.requireNonNull(inflater, "LayoutInflater");

if(getDialog().getWindow() != null) {
getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
getDialog().setCanceledOnTouchOutside(true);
}
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_layer_switcher, container, false);
}

@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
Objects.requireNonNull(view, "View");

super.onViewCreated(view, savedInstanceState);
layerList = view.findViewById(R.id.layer_list);
layerList.setAdapter(new LayerListAdapter(context, layers, layerSelectionListener));
layerList.setLayoutManager(new LinearLayoutManager(context));
}

我已经尝试了此 SO question 中建议的所有内容但它没有用。

除此之外,我还尝试创建一个可绘制对象并将其添加为 scrollbarThumbVertical

我认为这与主题有关,因为即使我更改了约束布局的背景颜色,它也没有显示在对话框中。

编辑:我正在显示如下所示的对话框:

LayerSwitcherFragment switcherFragment = LayerSwitcherFragment.newInstance(layers);
FragmentTransaction ft = getChildFragmentManager().beginTransaction();
Fragment prev = getChildFragmentManager().findFragmentByTag("layer_dialog");
if (prev != null) {
ft.remove(prev);
}
ft.addToBackStack(null);
switcherFragment.show(ft, "layer_dialog");

编辑:问题已解决。很抱歉浪费了大家的时间。这个问题是我们犯的一个愚蠢的错误。我的 DialogFragment 在库中。我们构建了 arr 文件并在应用程序中使用它。问题是当我们将 dialogfragment 的 XML 文件重构到 arr 库时,我们忘记从主应用程序中删除它。因此,即使在我们更新了库中的文件之后,应用程序仍在主应用程序中选取旧文件而不是更新后的文件,因为 XML 的名称是相同的。

最佳答案

尝试:

android:fadeScrollbars="false"
android:scrollbarAlwaysDrawVerticalTrack="true"

关于android - RecyclerView 滚动条在 Android 的对话框 fragment 中不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57428965/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com