Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

RecyclerView के साथ हॉरिजॉन्टल ListView कैसे बनाएं?

RecyclerView के साथ हॉरिजॉन्टल ListView

यह उदाहरण RecyclerView के साथ हॉरिजॉन्टल ListView बनाने को दर्शाता है।

चरण 1: नया प्रोजेक्ट बनाएं

Android Studio में File → New Project पर जाएं और आवश्यक विवरण भरकर एक नया प्रोजेक्ट बनाएं।

चरण 2: res/layout/activity_main.xml में कोड जोड़ें

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:app="https://schemas.android.com/apk/res-auto">
    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <android.support.v7.widget.Toolbar
            android:id="@+id/appbarlayout_tool_bar"
            android:background="@color/colorPrimary"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            app:layout_scrollFlags="scroll|snap|enterAlways"
            app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
            app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
    </android.support.design.widget.AppBarLayout>
    <android.support.v7.widget.RecyclerView
        android:id="@+id/recycler_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
</android.support.design.widget.CoordinatorLayout>

चरण 3: src/MainActivity.java में कोड जोड़ें

package com.example.myapplication;

import android.annotation.TargetApi;
import android.os.Build;
import android.os.Bundle;
import android.support.v4.content.ContextCompat;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.DividerItemDecoration;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.widget.Toast;
import java.util.ArrayList;

public class MainActivity extends AppCompatActivity {
    ArrayList<String> list = new ArrayList<>();
    private RecyclerView recyclerView;
    private CustomAdapter mAdapter;
    private OnClickInterface onclickInterface;

    @TargetApi(Build.VERSION_CODES.LOLLIPOP)
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Toolbar toolbar = findViewById(R.id.appbarlayout_tool_bar);
        toolbar.setTitle("This is toolbar.");
        setSupportActionBar(toolbar);

        onclickInterface = new OnClickInterface() {
            @Override
            public void setClick(int abc) {
                list.remove(abc);
                Toast.makeText(MainActivity.this, "Position is " + abc, Toast.LENGTH_LONG).show();
                mAdapter.notifyDataSetChanged();
            }
        };

        recyclerView = findViewById(R.id.recycler_view);
        RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext(), LinearLayoutManager.HORIZONTAL, false);
        recyclerView.setLayoutManager(mLayoutManager);
        recyclerView.setItemAnimator(new DefaultItemAnimator());
        mAdapter = new CustomAdapter(this, list, onclickInterface);
        recyclerView.setAdapter(mAdapter);

        DividerItemDecoration dividerItemDecoration = new DividerItemDecoration(recyclerView.getContext(), DividerItemDecoration.HORIZONTAL);
        recyclerView.addItemDecoration(dividerItemDecoration);

        list.add("sairamm");
        list.add("Krishna");
        list.add("prasad");
        // ... अधिक आइटम जोड़ें
    }
}

चरण 4: src/CustomAdapter.java में कोड जोड़ें

package com.example.myapplication;

import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import java.util.ArrayList;

public class CustomAdapter extends RecyclerView.Adapter<CustomAdapter.MyViewHolder> {
    Context context;
    ArrayList<String> list;
    OnClickInterface onClickInterface;

    public class MyViewHolder extends RecyclerView.ViewHolder {
        public TextView title;

        public MyViewHolder(View view) {
            super(view);
            title = view.findViewById(R.id.title);
        }
    }

    public CustomAdapter(Context context, ArrayList<String> list, OnClickInterface onClickInterface) {
        this.context = context;
        this.list = list;
        this.onClickInterface = onClickInterface;
    }

    @NonNull
    @Override
    public MyViewHolder onCreateViewHolder(@NonNull ViewGroup viewGroup, int i) {
        View itemView = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.list_row, viewGroup, false);
        return new MyViewHolder(itemView);
    }

    @Override
    public void onBindViewHolder(@NonNull MyViewHolder myViewHolder, final int i) {
        myViewHolder.title.setText(list.get(i));
        myViewHolder.title.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                onClickInterface.setClick(i);
            }
        });
    }

    @Override
    public int getItemCount() {
        return list.size();
    }
}

चरण 5: res/layout/list_row.xml में कोड जोड़ें

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:app="https://schemas.android.com/apk/res-auto"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:padding="10dp"
    tools:context=".MainActivity">
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="vertical">
        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@drawable/logo" />
        <TextView
            android:id="@+id/title"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:textSize="30sp" />
        <TextView
            android:id="@+id/textview2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="Sairamkrishan"
            android:textSize="30sp" />
    </LinearLayout>
</android.support.v7.widget.CardView>

चरण 6: src/OnClickInterface.java में कोड जोड़ें

package com.example.myapplication;

public interface OnClickInterface {
    void setClick(int abc);
}

चरण 7: res/drawable/divider.xml में कोड जोड़ें

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="https://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="@color/colorPrimary"/>
    <size android:height="2dp"/>
</shape>

ऐप चलाएं

अपने Android डिवाइस को कंप्यूटर से कनेक्ट करें। Android Studio में प्रोजेक्ट की एक्टिविटी फाइल खोलें और टूलबार से Run आइकन पर क्लिक करें। अपना मोबाइल डिवाइस चुनें और डिफॉल्ट स्क्रीन देखें।

RecyclerView के साथ हॉरिजॉन्टल ListView कैसे बनाएं?

  1. Android में SearchView से RecyclerView कैसे फ़िल्टर करें? Android में SearchView से RecyclerView कैसे फ़िल्टर करें?

    Android में SearchView से RecyclerView फ़िल्टर करना यह ट्यूटोरियल दिखाता है कि कैसे RecyclerView में SearchView का उपयोग करके रियल-टाइम फ़िल्टरिंग इम्प्लीमेंट की जाती है, Filterable इंटरफेस और कस्टम एडाप्टर के साथ। चरण 1: प्रोजेक्ट और निर्भरताएं Android Studio में नया प्रोजेक्ट बनाएं। RecyclerView

  1. Android में डेटाबेस के साथ RecyclerView का उपयोग कैसे करें? Android में डेटाबेस के साथ RecyclerView का उपयोग कैसे करें?

    Android में SQLite डेटाबेस के साथ RecyclerView इम्प्लीमेंटेशन यह ट्यूटोरियल दिखाता है कि कैसे Room Database (आधुनिक) या SQLiteOpenHelper (लीगेसी) के साथ RecyclerView को जोड़ा जाता है, CRUD ऑपरेशन्स (बनाएं, पढ़ें, अपडेट करें, हटाएं) के साथ। आधुनिक दृष्टिकोण: Room Database (अनुशंसित) चरण 1: निर्भरता

  1. Android में RecyclerView से एंडलेस/इनफिनिट स्क्रॉलिंग लिस्ट कैसे बनाएं? Android में RecyclerView से एंडलेस/इनफिनिट स्क्रॉलिंग लिस्ट कैसे बनाएं?

    परिचय यह ट्यूटोरियल दिखाता है कि RecyclerView में एंडलेस स्क्रॉलिंग (पेजिनेशन) कैसे इम्प्लीमेंट करें। जब उपयोगकर्ता सूची के अंत तक पहुंचता है, तो अगला पेज ऑटोमैटिकली लोड होता है। आवश्यक चरण चरण 1: नया प्रोजेक्ट बनाएं और डिपेंडेंसी जोड़ें Android Studio में File → New Project से नया प्रोजेक्ट बनाएं