मैं इसRecyclerView स्वाइप क्लिक
<Layout>
<BackgroundView>
<ForegroundView>
</Layout>
की तरह एक RecyclerView
पंक्ति लेआउट मैं की तरह
@Override
public void onSwiped(RecyclerView.ViewHolder viewHolder, int direction) {
adapter.onItemSwiped(viewHolder);
}
@Override
public void onChildDraw(Canvas c, RecyclerView recyclerView, RecyclerView.ViewHolder viewHolder,
float dX, float dY, int actionState, boolean isCurrentlyActive) {
View foregroundView = ((myViewHolder)viewHolder).getForegroundView();
getDefaultUIUtil().onDraw(c, recyclerView, foregroundView, dX, dY, actionState, isCurrentlyActive);
//getSwipeLimit() used below returns the width of the delete icon
float translationX = Math.min(-dX, ((myViewHolder) viewHolder).getSwipeLimit());
foregroundView.setTranslationX(-translationX);
}
मैं स्वाइप (आंशिक) अग्रभूमि दृश्य पर संभाल करने ItemTouchHelper
का उपयोग कर रहा है मेरे एडाप्टर वर्ग के BindViewHolder
में पृष्ठभूमि दृश्य के लिए एक क्लिक श्रोता सेट किया है।
@Override
public void onBindViewHolder(WhiteListViewHolder holder, Cursor cursor) {
//get name and number from the cursor here
holder.name.setText(name);
holder.number.setText(number);
holder.deleteButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.d("whitelist", "yes clicked");
}
});
}
समस्या है, पृष्ठभूमि दृश्य क्लिक्स को स्वीकार जब दृश्य स्वाइप नहीं है, लेकिन करने के बाद दृश्य बाहर स्वाइप है, पृष्ठभूमि दृश्य क्लिक्स स्वीकार करने बंद हो जाता है है।
ऊपर छवि चर्चा करते हुए अगर मैं हटाएँ बटन पर क्लिक करें, स्वाइप दृश्य कभी कभी वसूल किया जाता है और यह क्लिक कब्जा नहीं है।
यदि मैंने पूरा दृश्य स्वाइप कर दिया है, तो खाली खाली स्थान पर क्लिक करके स्वाइप किए गए दृश्य को वापस लाया जाता है।
अग्रिम धन्यवाद।
आप Github में अपनी परियोजना का हिस्सा इतना है कि मैं इसे एक कोशिश दे सकता है सकते हैं? –
@ReazMurshed आप यहां प्रोजेक्ट पा सकते हैं: https://github.com/amk47/testproject – AMK
इस लाइब्रेरी को चेकआउट करें: मैंने यह प्रोजेक्ट में उपयोग किया है, यह मेरे लिए पूरी तरह से काम करता है। अगर यह मदद करता है तो मुझे बताएं: https://github.com/daimajia/AndroidSwipeLayout –