RecyclerView के साथ एक क्षैतिज सूची दृश्य कैसे बनाएं?


338

मुझे अपने Android एप्लिकेशन में एक क्षैतिज सूची को लागू करने की आवश्यकता है। मैंने थोड़ा शोध किया और मुझे पता चला कि मैं एंड्रॉइड में एक क्षैतिज सूची दृश्य कैसे बना सकता हूं? और क्षैतिज सूची दृश्य Android में? हालाँकि, ये सवाल Recyclerview जारी होने से पहले पूछे गए थे। क्या Recyclerview के साथ अब इसे लागू करने का एक बेहतर तरीका है?


12
बस एक LinearLayoutManagerओरिएंटेशन सेट के साथ उपयोग करें HORIZONTAL
ईगोर नालिबा

@EgorN मैंने कोशिश की कि, यह इसे क्षैतिज बनाता है लेकिन ऐसा लगता है कि यह एडॉप्टर पंक्ति के बच्चों को भी क्षैतिज में बदल देता है। मैं एक RelativeLayout है। मुझे यकीन नहीं है कि इसे कैसे ठीक किया जाए?
मुहम्मद उमर

जवाबों:


739

क्या अब इसे Recyclerview के साथ लागू करने का एक बेहतर तरीका है?

हाँ।

जब आप एक का उपयोग करते हैं RecyclerView, तो आपको यह निर्दिष्ट करने की आवश्यकता होती है LayoutManagerकि दृश्य में प्रत्येक आइटम को बिछाने के लिए जिम्मेदार है। LinearLayoutManagerआपको एक सामान्य LinearLayoutइच्छा की तरह, एक अभिविन्यास निर्दिष्ट करने की अनुमति देता है ।

इसके साथ एक क्षैतिज सूची बनाने के लिए RecyclerView, आप ऐसा कुछ कर सकते हैं:

LinearLayoutManager layoutManager
    = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);

RecyclerView myList = (RecyclerView) findViewById(R.id.my_recycler_view);
myList.setLayoutManager(layoutManager);

मैंने कोशिश की कि, यह इसे क्षैतिज बना दे, लेकिन ऐसा लगता है कि यह एडॉप्टर पंक्ति के बच्चों को भी क्षैतिज में बदल देता है। मैं एक RelativeLayout है। मुझे यकीन नहीं है कि इसे कैसे ठीक किया जाए?
मुहम्मद उमर

2
RelativeLayoutक्षैतिज बनाम ऊर्ध्वाधर की कोई अवधारणा नहीं है, इसलिए मैं वास्तव में प्रश्न को नहीं समझता हूं।
ब्रायन हर्बस्ट

2
जाहिरा तौर पर RecyclerView और क्षैतिज रूप से स्क्रॉल करने वाले LayoutManager के साथ कुछ समस्याएं हैं ... code.google.com/p/android/issues/detail?id=74772 - यह पाया गया क्योंकि मैं वास्तव में क्षैतिज स्क्रॉलिंग RecyclerView का उपयोग करके संघर्ष कर रहा था
AgentKnopf

Zainodis क्या आप को पता है कि तब क्या उपयोग करना है? LinearLayoutManager मेरे लिए एक आयात के रूप में भी नहीं दिखाता है? क्या मुझे कुछ याद आ रहा है
Lion789

@ Tanis.7x यह मेरे लिए बहुत अच्छा काम करता है, लेकिन यह सूची को बाएं से दाएं पॉप्युलेट करता है। क्या किसी को पता है कि वहाँ सही करने के लिए बाईं ओर से आबाद करने का एक तरीका है? (पहला आइटम सूची में सबसे सही है, आइटम 1 इंडेक्स में है फिर बाईं ओर है, और इसी तरह ...)
उठाया

169
 <android.support.v7.widget.RecyclerView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layoutManager="android.support.v7.widget.LinearLayoutManager" />

कैसे तो लेआउट प्रबंधक सेट करने के लिए?
काई वांग

@kaiwang pls "Tanis.7x" उत्तर के ऊपर देखें।
उबला हुआ पानी

app:layoutManager="android.support.v7.widget.LinearLayoutManager"रिलीज बिल्ड के लिए काम नहीं करेगा। मुझे इस समस्या का सामना करना पड़ा है बिल्ड बिल्ड।
अबू यूसुफ

मैं इसे कैसे इंटरफ़ेस बिल्डर में दिखाने के लिए देख रहा था। उपकरण: अभिविन्यास = "क्षैतिज" उपकरण: LayoutManager = "android.support.v7.widget.LinearLayoutManager" ने मुझे धन्यवाद दिया।
मोहम्मद तब्बारा

'<androidx.recyclerview.widget.RecyclerView Android: Layout_width = "match_parent" Android: layout_height = "70dp" Android: layout_gravity = "निचला" Android: ओरिएंटेशन = क्षैतिज "ऐप: लेआउट प्रबंधक =" androidx.recyclerview.widgetLinearLayoutManager " /> '
यानि

74

पूरा उदाहरण

यहां छवि विवरण दर्ज करें

एक ऊर्ध्वाधर RecyclerViewऔर एक क्षैतिज एक के बीच एकमात्र वास्तविक अंतर यह है कि आप कैसे सेट करते हैं LinearLayoutManager। यहाँ कोड स्निपेट है। पूरा उदाहरण नीचे है।

LinearLayoutManager horizontalLayoutManagaer = new LinearLayoutManager(MainActivity.this, LinearLayoutManager.HORIZONTAL, false);
recyclerView.setLayoutManager(horizontalLayoutManagaer);

यह फुलर उदाहरण मेरे ऊर्ध्वाधर RecyclerViewउत्तर के बाद तैयार किया गया है ।

अद्यतन ग्रेड निर्भरता

सुनिश्चित करें कि निम्न निर्भरताएँ आपकी ऐप gradle.buildफ़ाइल में हैं:

implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:recyclerview-v7:27.1.1'

आप संस्करण संख्याओं को अपडेट कर सकते हैं जो कि सबसे अधिक चालू है

गतिविधि लेआउट बनाएँ

RecyclerViewअपने xml लेआउट में जोड़ें ।

activity_main.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">

    <android.support.v7.widget.RecyclerView
        android:id="@+id/rvAnimals"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>

</RelativeLayout>

आइटम लेआउट बनाएँ

हमारे प्रत्येक आइटम में RecyclerViewएक के Viewऊपर एक सिंगल रंग होता है TextView। एक नया लेआउट संसाधन फ़ाइल बनाएँ।

recyclerview_item.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="10dp">

    <View
        android:id="@+id/colorView"
        android:layout_width="100dp"
        android:layout_height="100dp"/>

    <TextView
        android:id="@+id/tvAnimalName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="20sp"/>

</LinearLayout>

एडॉप्टर बनाएं

RecyclerViewआपके डेटा के साथ प्रत्येक पंक्ति (क्षैतिज आइटम) में दृश्य को पॉप्युलेट करने के लिए एक एडेप्टर की आवश्यकता होती है। एक नई जावा फ़ाइल बनाएँ।

MyRecyclerViewAdapter.java

public class MyRecyclerViewAdapter extends RecyclerView.Adapter<MyRecyclerViewAdapter.ViewHolder> {

    private List<Integer> mViewColors;
    private List<String> mAnimals;
    private LayoutInflater mInflater;
    private ItemClickListener mClickListener;

    // data is passed into the constructor
    MyRecyclerViewAdapter(Context context, List<Integer> colors, List<String> animals) {
        this.mInflater = LayoutInflater.from(context);
        this.mViewColors = colors;
        this.mAnimals = animals;
    }

    // inflates the row layout from xml when needed
    @Override
    @NonNull
    public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = mInflater.inflate(R.layout.recyclerview_item, parent, false);
        return new ViewHolder(view);
    }

    // binds the data to the view and textview in each row
    @Override
    public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
        int color = mViewColors.get(position);
        String animal = mAnimals.get(position);
        holder.myView.setBackgroundColor(color);
        holder.myTextView.setText(animal);
    }

    // total number of rows
    @Override
    public int getItemCount() {
        return mAnimals.size();
    }

    // stores and recycles views as they are scrolled off screen
    public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
        View myView;
        TextView myTextView;

        ViewHolder(View itemView) {
            super(itemView);
            myView = itemView.findViewById(R.id.colorView);
            myTextView = itemView.findViewById(R.id.tvAnimalName);
            itemView.setOnClickListener(this);
        }

        @Override
        public void onClick(View view) {
            if (mClickListener != null) mClickListener.onItemClick(view, getAdapterPosition());
        }
    }

    // convenience method for getting data at click position
    public String getItem(int id) {
        return mAnimals.get(id);
    }

    // allows clicks events to be caught
    public void setClickListener(ItemClickListener itemClickListener) {
        this.mClickListener = itemClickListener;
    }

    // parent activity will implement this method to respond to click events
    public interface ItemClickListener {
        void onItemClick(View view, int position);
    }
}

टिप्पणियाँ

  • यद्यपि कड़ाई से आवश्यक नहीं है, मैंने आइटम पर क्लिक की घटनाओं को सुनने के लिए कार्यक्षमता शामिल की। यह पुराने में उपलब्ध थाListViews और एक आम जरूरत है। यदि आपको इसकी आवश्यकता नहीं है तो आप इस कोड को हटा सकते हैं।

गतिविधि में RecyclerView को आरम्भ करें

अपनी मुख्य गतिविधि में निम्न कोड जोड़ें।

MainActivity.java

public class MainActivity extends AppCompatActivity implements MyRecyclerViewAdapter.ItemClickListener {

    private MyRecyclerViewAdapter adapter;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // data to populate the RecyclerView with
        ArrayList<Integer> viewColors = new ArrayList<>();
        viewColors.add(Color.BLUE);
        viewColors.add(Color.YELLOW);
        viewColors.add(Color.MAGENTA);
        viewColors.add(Color.RED);
        viewColors.add(Color.BLACK);

        ArrayList<String> animalNames = new ArrayList<>();
        animalNames.add("Horse");
        animalNames.add("Cow");
        animalNames.add("Camel");
        animalNames.add("Sheep");
        animalNames.add("Goat");

        // set up the RecyclerView
        RecyclerView recyclerView = findViewById(R.id.rvAnimals);
        LinearLayoutManager horizontalLayoutManager
                = new LinearLayoutManager(MainActivity.this, LinearLayoutManager.HORIZONTAL, false);
        recyclerView.setLayoutManager(horizontalLayoutManager);
        adapter = new MyRecyclerViewAdapter(this, viewColors, animalNames);
        adapter.setClickListener(this);
        recyclerView.setAdapter(adapter);
    }

    @Override
    public void onItemClick(View view, int position) {
        Toast.makeText(this, "You clicked " + adapter.getItem(position) + " on item position " + position, Toast.LENGTH_SHORT).show();
    }
}

टिप्पणियाँ

  • ध्यान दें कि गतिविधि वह है ItemClickListenerजिसे हम अपने एडेप्टर में परिभाषित करते हैं। यह हमें आइटम क्लिक की घटनाओं को संभालने की अनुमति देता है onItemClick

ख़त्म होना

बस। अब आपको अपनी परियोजना चलाने में सक्षम होना चाहिए और शीर्ष पर छवि के समान कुछ प्राप्त करना चाहिए।

टिप्पणियाँ


12

यदि आप के RecyclerViewसाथ उपयोग करना चाहते हैं GridLayoutManager, तो यह क्षैतिज स्क्रॉल प्राप्त करने का तरीका है।

recyclerView.setLayoutManager(
new GridLayoutManager(recyclerView.getContext(), rows, GridLayoutManager.HORIZONTAL, false));

यह मेरे लिए अच्छी तरह से काम करता है ... ज्यादातर इसलिए क्योंकि आप पंक्तियों को संख्या निर्धारित कर सकते हैं ... इसके लिए यह रैखिक रैखिक प्रबंधक के रूप में अच्छा है?
सुपर सपर 15'16

9

क्षैतिज सूची दृश्य बनाने में बहुत अधिक समय लग रहा है। मैंने इसे दो तरह से हल किया है।

1. एक ViewPager का उपयोग कर जिसका एडाप्टर PagerAdapter से फैली हुई है।

2. ठीक ऊपर के रूप में RecyclerView का उपयोग कर। निम्न कोड के रूप में LayoutManager को लागू करने की आवश्यकता है:

LinearLayoutManager layoutManager
    = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);

RecyclerView myList = (RecyclerView) findViewById(R.id.my_recycler_view);
myList.setLayoutManager(layoutManager);

6

यदि आप क्षैतिज पुनर्नवीनीकरण दृश्य का उपयोग ViewPager के रूप में करने की इच्छा रखते हैं तो यह अब संभव है LinearSnapHelperजिसकी सहायता से समर्थन लाइब्रेरी संस्करण 24.2.0 में जोड़ा गया है।

सबसे पहले अपनी गतिविधि / फ्रैगमेंट में RecyclerView जोड़ें

<android.support.v7.widget.RecyclerView
        android:layout_below="@+id/sign_in_button"
        android:layout_width="match_parent"
        android:orientation="horizontal"
        android:id="@+id/blog_list"
        android:layout_height="match_parent">
    </android.support.v7.widget.RecyclerView>

मेरे मामले में मैंने CardViewअंदर का उपयोग किया हैRecyclerView

blog_row.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView 

    xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_margin="15dp"
        android:orientation="vertical">

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:gravity="center"
            android:orientation="vertical">

            <com.android.volley.toolbox.NetworkImageView
                android:id="@+id/imageBlogPost"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true"
                android:paddingBottom="15dp"
                android:src="@drawable/common_google_signin_btn_text_light_normal" />

            <TextView
                android:id="@+id/TitleTextView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
               android:layout_marginBottom="20dp"

                android:text="Post Title Here"
                android:textSize="16sp" />

            <TextView
                android:id="@+id/descriptionTextView"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Post Description Here"
                android:paddingBottom="15dp"
                android:textSize="14sp" />
        </LinearLayout>

    </android.support.v7.widget.CardView>

आपकी गतिविधि / प्रगति में

    private RecyclerView mBlogList;




 LinearLayoutManager layoutManager
                    = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
            mBlogList = (RecyclerView) findViewById(R.id.blog_list);

            mBlogList.setHasFixedSize(true);
            mBlogList.setLayoutManager(layoutManager);

LinearSnapHelper snapHelper = new LinearSnapHelper() {
            @Override
            public int findTargetSnapPosition(RecyclerView.LayoutManager lm, int velocityX, int velocityY) {
                View centerView = findSnapView(lm);
                if (centerView == null)
                    return RecyclerView.NO_POSITION;

                int position = lm.getPosition(centerView);
                int targetPosition = -1;
                if (lm.canScrollHorizontally()) {
                    if (velocityX < 0) {
                        targetPosition = position - 1;
                    } else {
                        targetPosition = position + 1;
                    }
                }

                if (lm.canScrollVertically()) {
                    if (velocityY < 0) {
                        targetPosition = position - 1;
                    } else {
                        targetPosition = position + 1;
                    }
                }

                final int firstItem = 0;
                final int lastItem = lm.getItemCount() - 1;
                targetPosition = Math.min(lastItem, Math.max(targetPosition, firstItem));
                return targetPosition;
            }
        };
        snapHelper.attachToRecyclerView(mBlogList);

अंतिम चरण RecyclerView के लिए एडेप्टर सेट करना है

mBlogList.setAdapter(firebaseRecyclerAdapter);

4

RecyclerView लाइब्रेरी के विमोचन के साथ, अब आप आसानी से पाठ के साथ बाँधने वाले चित्रों की सूची को संरेखित कर सकते हैं। आप अपनी सूची को उस दिशा में निर्दिष्ट करने के लिए LinearLayoutManager का उपयोग कर सकते हैं जिसमें आप अपनी सूची को या तो लंबवत या क्षैतिज रूप से दर्शाते हैं।

यहां छवि विवरण दर्ज करें

आप इस पोस्ट से पूर्ण कार्यशील डेमो डाउनलोड कर सकते हैं


2
 <HorizontalScrollView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            >
        <android.support.v7.widget.RecyclerView
            android:id="@+id/recycler_view"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="horizontal"
            android:scrollbars="vertical|horizontal" />
        </HorizontalScrollView>

    import androidx.appcompat.app.AppCompatActivity;
    import android.content.Context;
    import android.content.ContextWrapper;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.os.AsyncTask;
    import android.os.Bundle;
    import android.os.Environment;
    import android.view.View;
    import android.widget.ImageView;
    import android.widget.Toast;
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.net.HttpURLConnection;
    public class MainActivity extends AppCompatActivity
     {
        ImageView mImageView1;
        Bitmap bitmap;
        String mSavedInfo;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            mImageView1 = (ImageView) findViewById(R.id.image);
        }
        public Bitmap getBitmapFromURL(String src) {
            try {
                java.net.URL url = new java.net.URL(src);
                HttpURLConnection connection = (HttpURLConnection) url.openConnection();
                connection.setDoInput(true);
                connection.connect();
                InputStream input = connection.getInputStream();
                Bitmap myBitmap = BitmapFactory.decodeStream(input);
                return myBitmap;
            } catch (IOException e) {
                e.printStackTrace();
                return null;
            }
        }
        public void button2(View view) {
            new DownloadImageFromTherad().execute();
        }
        private class DownloadImageFromTherad extends AsyncTask<String, Integer, String> {
            @Override
            protected String doInBackground(String... params) {
                bitmap = getBitmapFromURL("https://cdn.pixabay.com/photo/2016/08/08/09/17/avatar-1577909_960_720.png");
                return null;
            }

            @Override
            protected void onPostExecute(String s) {
                super.onPostExecute(s);
                File sdCardDirectory = Environment.getExternalStorageDirectory();
                File image = new File(sdCardDirectory, "test.png");
                boolean success = false;
                FileOutputStream outStream;
                mSavedInfo = saveToInternalStorage(bitmap);
                if (success) {
                    Toast.makeText(getApplicationContext(), "Image saved with success", Toast.LENGTH_LONG).show();
                } else {
                    Toast.makeText(getApplicationContext(), "Error during image saving" + mSavedInfo, Toast.LENGTH_LONG).show();
                }
            }
        }
        private String saveToInternalStorage(Bitmap bitmapImage) {
            ContextWrapper cw = new ContextWrapper(getApplicationContext());
            // path to /data/data/yourapp/app_data/imageDir
            File directory = cw.getDir("imageDir", Context.MODE_PRIVATE);
            File mypath = new File(directory, "profile.jpg");
            FileOutputStream fos = null;
            try {
                fos = new FileOutputStream(mypath);
                bitmapImage.compress(Bitmap.CompressFormat.PNG, 100, fos);
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                try {
                    fos.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            return directory.getAbsolutePath();
        }
        private void loadImageFromStorage(String path) {
            try {
                File f = new File(path, "profile.jpg");
                Bitmap b = BitmapFactory.decodeStream(new FileInputStream(f));
                mImageView1.setImageBitmap(b);
            } catch (FileNotFoundException e) {
                e.printStackTrace();
            }
        }
        public void showImage(View view) {
            loadImageFromStorage(mSavedInfo);
        }
    }

1

वहाँ एक RecyclerView उपवर्ग नामित है HorizontalGridView आप क्षैतिज दिशा के लिए उपयोग कर सकते हैं। VerticalGridView ऊर्ध्वाधर दिशा के लिए


5
क्या गैर-टीवी उपकरणों के लिए भी क्षैतिज क्षैतिज व्यू का उपयोग किया जाना है? Afaik the leanback लाइब्रेरी टीवी के लिए है
AgentKnopf

2
लीनबैक का उपयोग करने से आपके ऐप का minSdkVersion 17 तक पहुंच जाएगा
किसी को

1

यह क्षैतिज और ऊर्ध्वाधर दोनों के लिए है।

RecyclerView recyclerView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_test_recycler);
    recyclerView = (RecyclerView)findViewById(R.id.recyclerViewId);

    RecyclAdapter adapter = new RecyclAdapter();

    //Vertical RecyclerView
    RecyclerView.LayoutManager mLayoutManager = new LinearLayoutManager(getApplicationContext());
    recyclerView.setLayoutManager(mLayoutManager);

    //Horizontal RecyclerView
    //recyclerView.setLayoutManager(new LinearLayoutManager(getApplicationContext(),LinearLayoutManager.HORIZONTAL,false));

    recyclerView.setAdapter(adapter);

}

1

क्षैतिज गतिशील में पुनर्नवीनीकरण दृश्य।

पुनर्नवीनीकरण दृश्य कार्यान्वयन

RecyclerView musicList = findViewById(R.id.MusicList);

// RecyclerView musiclist = findViewById(R.id.MusicList1);
// RecyclerView musicLIST = findViewById(R.id.MusicList2);
LinearLayoutManager layoutManager = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
musicList.setLayoutManager(layoutManager);

String[] names = {"RAP", "CH SHB", "Faheem", "Anum", "Shoaib", "Laiba", "Zoki", "Komal", "Sultan","Mansoob Gull"};
musicList.setAdapter(new ProgrammingAdapter(names));'

रिसाइकलर व्यू के लिए एडॉप्टर क्लास, जिसमें उस रिसाइकलर के दृश्य को रखने के लिए व्यू होल्डर होता है

public class ProgrammingAdapter 
     extendsRecyclerView.Adapter<ProgrammingAdapter.programmingViewHolder> {

private String[] data;

public ProgrammingAdapter(String[] data)
{
    this.data = data;
}

@Override
public programmingViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
    LayoutInflater inflater = LayoutInflater.from(parent.getContext());
    View view = inflater.inflate(R.layout.list_item_layout, parent, false);

    return new programmingViewHolder(view);
}

@Override
public void onBindViewHolder(@NonNull programmingViewHolder holder, int position) {
    String title = data[position];
    holder.textV.setText(title);
}

@Override
public int getItemCount() {
    return data.length;
}

public class programmingViewHolder extends RecyclerView.ViewHolder{
    ImageView img;
    TextView textV;
    public programmingViewHolder(View itemView) {
        super(itemView);
        img =  itemView.findViewById(R.id.img);
        textV =  itemView.findViewById(R.id.textt);
    }
}


0

इसे इस्तेमाल करे:

myrecyclerview.setLayoutManager(
        new LinearLayoutManager(getActivity(),
                                LinearLayoutManager.HORIZONTAL,false));
myrecyclerview.setAdapter(recyclerAdapter);

केवल उसी स्थिति में जब आपको उस पर कुछ अंशों के साथ एक पुनर्नवीनीकरण दृश्य मिला।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.