Как изменить макет элемента RecyclerView при горизонтальной прокрутке в центр в Android?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как изменить макет элемента RecyclerView при горизонтальной прокрутке в центр в Android?

Сообщение Anonymous »

Я работаю над приложением для Android и хочу реализовать RecyclerView, в котором макет элемента меняется при горизонтальной прокрутке к центру. Я включил изображение ниже, чтобы показать, к чему я стремлюсь:
[img]https: //i.sstatic.net/Kjc2OSGy.png[/img]

Чего я хочу достичь:
Когда элемент в RecyclerView прокручивается в центр, я хочу его чтобы изменить его макет, чтобы он выглядел более заметным (например, увеличить размер, изменить фон и т. д.).
Что я пробовал:
  • Я реализовал базовый RecyclerView с горизонтальным LinearLayoutManager.
  • Я искал учебные пособия, но мне удалось найти только примеры стандартных реализаций RecyclerView
    .
    Мой код на данный момент:
    Вот базовая настройка моего RecyclerView:

Код: Выделить всё

    RecyclerView recyclerView = findViewById(R.id.recyclerView);
recyclerView.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false));
MyAdapter adapter = new MyAdapter(myData);
recyclerView.setAdapter(adapter);
мой адаптер:

Код: Выделить всё

    public class MyAdapter extends RecyclerView.Adapter {
private List mData;

public MyAdapter(List data) {
this.mData = data;
}

@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_layout, parent, false);
return new ViewHolder(view);
}

@Override
public void onBindViewHolder(ViewHolder holder, int position) {
// Bind data to the item
}

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

public class ViewHolder extends RecyclerView.ViewHolder {
public ViewHolder(View itemView) {
super(itemView);
}
}
}
Как определить, что элемент центрирован, и соответствующим образом изменить его макет? Существуют ли в RecyclerView конкретные методы или прослушиватели, которые я могу использовать для достижения этого эффекта?
Будем очень признательны за любые рекомендации или примеры кода.

Подробнее здесь: https://stackoverflow.com/questions/786 ... tally-in-a
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»