こんにちは、一度に 1 つのアイテムしかスクロールできないスクロール機能を実装しようとしています。これを試しましたが、機能しません。
私の質問に必要だと思われるコードの一部のみをアップロードしました。誰かがファイルの完全なコードを表示したい場合は教えてください
ノート:-
ずらしたグリッド レイアウト マネージャーを使用しましたが、削除したくありません。
Java ファイル
Home_Fragment.java
public class Home_Fragment extends Fragment {
private final DatabaseReference databaseReference = FirebaseDatabase.getInstance().getReference("uploads");
public List<Upload> mUploads;
PostAdapter postsAdapter;
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_home, container, false);
Objects.requireNonNull(getActivity()).setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_UNSPECIFIED);
RecyclerView postRecyclerView = view.findViewById(R.id.recyclerViewHome);
// LinearSnapHelper linearSnapHelper = new SnapHelperOneByOne();
// linearSnapHelper.attachToRecyclerView(postRecyclerView);
postRecyclerView.setLayoutManager(
new StaggeredGridLayoutManager(1, StaggeredGridLayoutManager.VERTICAL)
);
getData();
mUploads = new ArrayList<>();
postsAdapter = new PostAdapter(getContext(), mUploads);
postRecyclerView.setAdapter(postsAdapter);
return view;
}
XML ファイル
fragment_home.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.recyclerview.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/recyclerViewHome"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:orientation="vertical"
android:overScrollMode="never"/>
</RelativeLayout>
post_item_container.xml
<com.google.android.material.imageview.ShapeableImageView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/imagePost"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="6dp"
android:layout_marginTop="11dp"
android:layout_marginEnd="6dp"
android:contentDescription="@string/todo"
app:shapeAppearanceOverlay="@style/RoundedCorner" />