2012-02-01 13 views
13

के साथ विंडोज फोन 7 पर मोनोक्रॉस का उपयोग करना मुझे Monocross विचार पसंद है, लेकिन जब मैं पैनोरमा और/या पिवोट नियंत्रण का उपयोग करना चाहता हूं तो विंडोज फोन 7 के लिए थोड़ा सा खो गया हूं। प्रदान किया गया एकमात्र दृश्य पृष्ठ दृश्य है। तो एक पेज से दूसरे काम पर जाकर महान काम करता है! लेकिन अब मुझे पिवोट या पैनोरमा चाहिए। असल में मैं इस दृश्य के लिए एक नया नियंत्रक बना सकता हूं, लेकिन नियंत्रण के अंदर "पेज" प्राप्त करें। नेविगेट वास्तव में इसके लिए नेविगेट करता है, लेकिन पिवोट/पैनोरमा के अंदर नहीं।पैनोरामा और/या पिवट नियंत्रण

मोनोटच और मोनोडायड नमूने के लिए यह कैसे तैयार किया गया है (मूल रूप से एक नया व्यू कंट्रोलर बनाया गया था)। लेकिन WP7 पीछे छोड़ दिया गया है।

कोई भी?

उत्तर

1

मैं मोनो का उपयोग करके क्रॉस प्लेटफ़ॉर्म विकास भी कर रहा हूं और आपके जैसे और कई अन्य लोगों को उपयोगकर्ता इंटरफ़ेस और अन्य अंतर्निहित हार्डवेयर एकीकरण के संबंध में क्या करना है, इस समस्या का सामना करना पड़ता है।

मैंने फैसला किया कि मैं अभी तक एक और तीसरे पक्ष के ढांचे (मोनो पर्याप्त है) की दया पर नहीं रहना चाहता था और एक ऐसे समाधान के लिए शोध किया जो मैं खुद को बना और बनाए रख सकता था। अभिव्यक्ति मिश्रण के साथ नया एमवीवीएम पैटर्न वास्तव में अच्छा है लेकिन जल्द ही आप क्रॉस प्लेटफ़ॉर्म विकास की बात करते समय खुद को अटक जाते हैं। MVC an MVP पैटर्न मुझे जो भी चाहिए, उसके अनुरूप नहीं लग रहा था। आखिरकार PM पैटर्न पर बस गए और इसे पीएमएच में विस्तारित किया जहां एच हार्डवेयर के लिए है। मुझे जो चाहिए वह प्राप्त करने के लिए मुझे प्रत्येक डिवाइस प्रकार के लिए मूलभूत विजेट (बटन, पैनल, टेक्स्टबॉक्स) को अंतर्निहित प्लेटफ़ॉर्म परत में सार करना था। मेरी प्लेटफार्म परत मेरे कोड बेस के लगभग 1% का प्रतिनिधित्व करती है और मुझे प्रत्येक डिवाइस के लिए एप्लिकेशन को त्वचा की अनुमति देता है जिसे मैं लक्षित करता हूं।

मेरे WP7 समाधान के लिए मैं केवल 25 लाइनों के लिए किसी भी HTML का उपयोग करता हूं जो एप्लिकेशन और मुख्य पृष्ठ को प्रारंभ करने के लिए पर्याप्त है। बाकी यूजर इंटरफेस प्रोग्रामेटिक रूप से एक साथ रखा जाता है जैसे मैं WinForms में करता हूं। WP7 पर मैं अभी भी पिवट नियंत्रण का उपयोग करता हूं क्योंकि यह वास्तव में सुंदर ग्रोवी है और एंड्रॉइड/आईफोन पर उपयोग के लिए समान नियंत्रण मॉडलिंग कर रहा हूं। हालांकि यह 100% समान नहीं होगा, यह बहुत ही समान होगा और अभी भी मेरे कोर कोड के भीतर एक ही नेविगेशन इंजन का उपयोग करेगा।

मैं अभी तक अपने विकास के साथ पूरा नहीं हूं लेकिन अब तक मैं अपनी प्रगति से बहुत खुश हूं। मैं कुछ 20 सालों से विंडोज़ एप्लीकेशन के लिए यूजर इंटरफेस विकसित कर रहा हूं और मैं कभी भी इंटरफ़ेस बिल्डर टूल का उपयोग नहीं करता क्योंकि मुझे लगता है कि वे मुझे जो भी चाहते हैं उसे कभी नहीं देते हैं और वास्तव में मेरा समय बर्बाद करते हैं (मिश्रण हालांकि बहुत अच्छा है) और एक जबरदस्त कोड ब्लोट भी बनाते हैं विशेष रूप से मिश्रण में।

0

मैं पूरी तरह से मोनोक्रॉस के साथ मदद नहीं कर सकता - मैंने एक बार Droid के लिए नमूना किया - https://github.com/slodge/monocross-tab-activity-view - लेकिन मैंने कभी भी wp7 भाग पूरा नहीं किया।

mvvmcross के लिए ... जो संबंधित है ... कुछ नमूने हैं - ट्यूटोरियल में एक (थोड़ा हैकी!) और कॉन्फ़्रेंस ऐप में से एक - अधिक पसंदीदा नमूना।

बुनियादी तकनीक मैं चुन प्रत्येक चित्रमाला की "टैब" के लिए उप ViewModels उपयोग करने के लिए था - कैसे डेटा बाइंडिंग DataContext में https://github.com/slodge/MvvmCross/blob/master/Sample%20-%20CirriousConference/Cirrious.Conference.UI.WP7/Views/HomeView.xaml

नोट प्रत्येक आइटम के लिए सेट कर दिया जाता एक बड़ा अनुप्रयोग में वहाँ महत्वपूर्ण हो सकता है कि देखते हैं यह करने पर विचार करने के लिए स्मृति समस्याएं - विशेष रूप से जब एक पिवट नियंत्रण का उपयोग करते हैं जो सभी पृष्ठों को एक ही समय में स्मृति में लोड नहीं करता है (इसलिए आपको वास्तव में सभी व्यूमोडल्स को लोड करने की आवश्यकता नहीं है)

conf app पर कुछ ब्लॉगेज : http://slodge.blogspot.co.uk/2012/03/update-on-mvvmcross-sqlbits-conference.html

और अंतिम एसक्यूएल बिट्स sourc ई: https://github.com/slodge/MvvmCross/tree/master/Sample%20-%20CirriousConference

tabs and pivot example

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