В настоящее время я работаю над приложением для просмотра фильмов. Я пытаюсь передать данные из Recyclerview в другой recyclerview в новом действии. В настоящее время я знаю, как передавать данные из Recyclerview в textview и imageview. Однако я смотрел онлайн и пробовал коды, но все же я не мог передать данные из recyclerview в recyclerview. Я пытаюсь передать String ArrayList, который содержит URL-адреса. Как я мог передать данные? Пожалуйста, помогите мне TY! Я только недавно начал работать в студии Android
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, final int position) {
Glide.with(mContext)
.asBitmap()
.load(mImageUrls.get(position))
.into(holder.image);
holder.name.setText(mNames.get(position));
holder.image.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d(TAG, "onClick: Clicked on an image: " + mNames.get(position));
Toast.makeText(mContext, mNames.get(position), Toast.LENGTH_SHORT).show();
//Intent intent = new Intent(v.getContext(), MovieDetails.class);
//v.getContext().startActivity(intent);
Intent intent = new Intent(mContext, MovieDetails.class);
intent.putExtra("image_url", mImageUrls.get(position));
intent.putExtra("image_name", mNames.get(position));
intent.putExtra("director_name", mDirector.get(position));
intent.putStringArrayListExtra("movieTrailer", mTrailer);
mContext.startActivity(intent);
}
});
}
private void setImage(String imageUrl, String imageName, String directorName, ArrayList trailerUrl) {
Log.d(TAG, "setImage: setting the image and name to widgets.");
TextView name = findViewById(R.id.text_movie_original_title);
name.setText(imageName);
ImageView image = findViewById(R.id.image_movie_detail_poster);
Glide.with(this)
.asBitmap()
.load(imageUrl)
.into(image);
TextView director = findViewById(R.id.text_movie_director_name);
director.setText(directorName);
RecyclerView trailer = findViewById(R.id.movie_videos);
trailer.set;




bundle.putParcelableArrayList("urlList", list)
отправить через intent
получить arraylist от
getParcelableArrayList("urlList")
Вы знаете, как я могу установить URL-адрес в recyclerview, чтобы при нажатии на него открывалась ссылка на YouTube?
опубликуйте форму кода AdPater, где вы хотите открыть новую активность
Я только что добавил.
какой из Arraylist содержит URL-адреса? Вы хотите передать все, что есть в mImageUrls, в новую активность
тот, который содержит URL-адрес, - mTrailer
Я добавил код, который у меня уже есть, как установить строку в recyclerview
Если я правильно понимаю, вы хотите установить string array list на recyclerview в new activity
Я думаю, что эти шаги помогут: 1. создать массивы
поместите те же значения в массивы, которые вы положили на recyclerView.
передать массивы с помощью намерения. Пример:
Bundle bundle = new Bundle();
bundle.putStringArray("arrayOfName", new String[]{name1, name2});
bundle.putStringArray("arrayOfImageUrls", new String[]{url1, url2});
Intent intent=new Intent(context, SecondActivity.Class);
intent.putExtras(bundle);
затем во втором действии:
Bundle bundle = this.getIntent().getExtras();
String[] names=bundle.getStringArray("arrayOfName");
String[] urls=bundle.getStringArray("arrayOfImageUrls");
добавьте эти массивы в адаптер recyclerView в SecondActivity
Можно ли вообще передать данные из recyclerview в другой recyclerview? Я хочу понять цель нового действия, но не знаю, как это сделать. Для текстового просмотра я делаю String (имя переменной) = getIntent (). GetStringExtra (имя) и устанавливаю его с помощью TextView (имя переменной) = findviewbyid (R.id.textviewtitle); name.setText (имя переменной). Как установить текст с помощью recyclerview?