SORU
28 HAZİRAN 2014, CUMARTESİ


RecyclerView özelliği

Herkes RecyclerView kullanarak bir şekilde RecyclerView öğeler için onClickListenerbir set için buldu? Her madde için düzenleri her bir dinleyici ama bu biraz fazla bir güçlük gibi görünüyor ayarı düşündüm RecyclerView yol onClick olayı dinlemek vardır eminim ama tam olarak çözemedim.

CEVAP
4 EKİM 2014, CUMARTESİ


Burada daha iyi ve daha az sıkı eşleşmiş bir RecyclerView için bir OnClickListener uygulamak için bir yol.

Kullanım parçacığı:

RecyclerView recyclerView = findViewById(R.id.recycler);
recyclerView.addOnItemTouchListener(
    new RecyclerItemClickListener(context, new RecyclerItemClickListener.OnItemClickListener() {
      @Override public void onItemClick(View view, int position) {
        // do whatever
      }
    })
);

RecyclerİtemClickListener uygulanması

import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.view.View;


public class RecyclerItemClickListener implements RecyclerView.OnItemTouchListener {
  private OnItemClickListener mListener;

  public interface OnItemClickListener {
    public void onItemClick(View view, int position);
  }

  GestureDetector mGestureDetector;

  public RecyclerItemClickListener(Context context, OnItemClickListener listener) {
    mListener = listener;
    mGestureDetector = new GestureDetector(context, new GestureDetector.SimpleOnGestureListener() {
      @Override public boolean onSingleTapUp(MotionEvent e) {
        return true;
      }
    });
  }

  @Override public boolean onInterceptTouchEvent(RecyclerView view, MotionEvent e) {
    View childView = view.findChildViewUnder(e.getX(), e.getY());
    if (childView != null && mListener != null && mGestureDetector.onTouchEvent(e)) {
      mListener.onItemClick(childView, view.getChildPosition(childView));
      return true;
    }
    return false;
  }

  @Override public void onTouchEvent(RecyclerView view, MotionEvent motionEvent) { }
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • HTC Tutorials

    HTC Tutorial

    21 EYLÜL 2010
  • natescamp

    natescamp

    30 NİSAN 2009
  • YEAH1TV

    YEAH1TV

    19 ŞUBAT 2009