2011-10-21 17 views
6

मैं एक ऐसे एप्लिकेशन पर काम कर रहा हूं जो उपयोगकर्ताओं को गैलरी विजेट से आइटम ऑर्डर करने की अनुमति देता है। उपयोगकर्ता के पास गैलरी विजेट से ऑर्डर चुनने की क्षमता होनी चाहिए। आदेश गैलरी पर छवियों के रूप में प्रदर्शित होना चाहिए और उपयोगकर्ता के पास एक छवि खींचने और ऑर्डर बटन पर रखने की क्षमता होनी चाहिए।एंड्रॉइड गैलरी छवियों को खींचें और छोड़ें

मैं ड्रैग और ड्रॉप हिस्से से फंस गया हूं। एंड्रॉइड में गैलरी विजेट का उपयोग करके मैं छवियों को खींच और छोड़ूं कैसे?

+0

हैलो मैं अपने प्रोजेक्ट में वही करना चाहता हूं यदि आपको कोई समाधान मिलेगा तो कृपया पोस्ट करने का अनुरोध करें। –

+0

हाय। क्या आपको इसका कोई समाधान मिला? – SoH

उत्तर

1

कभी नहीं ऐसा किया तो मुझे यकीन है कि के लिए नहीं कह सकता, लेकिन यहाँ कैसे मैं इस समस्या दृष्टिकोण होता है:

मैं मौजूदा गैलरी का विस्तार होगा। फिर ऑनडाउन विधि को ओवरराइड करें या ऐसा कुछ पता लगाने में सक्षम है कि कौन सी छवि स्पर्श हुई है।

तब मैं उस छवि के साथ एक नया छवि दृश्य प्रदर्शित करूंगा जहां उंगली है, जो छुआ हुई घटना को सुनती है।

फिर टच जारी किए जाने पर, आप जांच सकते हैं कि घटक कहां गिरा है।

-

यह भी एक विचार एक स्क्रॉल पैनल में अपनी खुद की त्वरित गैलरी, इस तरह से आप की घटनाओं पर बहुत मोर नियंत्रण है लिखने के लिए हो सकता है;)

चीयर्स

जेसन

+0

मेरे प्रोजेक्ट में आपके फंड फंड का उपयोग किया गया है, मैंने छविदृश्य सरणी ली है और लाइनरलेआउट में ठीक किया है और क्षैतिज स्क्रॉल को इसके लिए दिया है .. लेकिन मैं गैलरी में ड्रैग और ड्रॉप करना चाहता हूं या इस तरह कुछ। ड्रैग और ड्रॉप सूची में संभावित https://github.com/commonsguy/cwac-touchlist –

1

एक दृष्टिकोण गैलरी का विस्तार करना और AdapterView.OnItemClickListener को लागू करना है।

आपका खींचें कार्रवाई के रूप में लागू किया जा सकता:

@Override 
public boolean onItemLongClick(AdapterView<?> parent, View view, int position, 
     long id) { 
    if (!view.isTouched()) { 
     return false; 
    } 
    customDragController.startDrag(view, this, view, CustomDragController.MOVE); 
    return true; 
} 

कि यह कैसे एक customDragController कृपया this GitHub परियोजना पर एक नजर है सहित लागू किया जा सकता का एक और अधिक पूर्ण उदाहरण के लिए।

संबंधित मुद्दे