यह दस्तावेज़ फ़िलहाल पुर्तगाली में उपलब्ध है। अन्य भाषाओं में अनुवाद जल्द ही आ रहा है।
कुकबुक
कार्य के अनुसार छोटी और सीधी रेसिपी — CrossFly में "X कैसे करें", न्यूनतम कोड और गहराई में जाने के लिंक के साथ।
तेज़ इंटरफ़ेस पैटर्न — डायलॉग, ड्रॉपडाउन, हिंट और चयन, हर रेसिपी में कॉपी करने लायक कोड।
स्क्रीन के निचले हिस्से में iOS-शैली की ऐक्शन शीट दिखाएं, बटनों और एक Cancelar के साथ।
RelativeLayout के साथ किसी अन्य कंपोनेंट के कोने पर एक सील/काउंटर को ओवरलैप करके स्थित करना।
प्रति टैब सामग्री वाली एक टैब बार बनाना और टैब बदलने पर प्रतिक्रिया देना।
गोल पृष्ठभूमि, लेआउट में सामग्री और स्पर्श पर प्रतिक्रिया वाला एक Component बनाना।
Progress को तीनों मोड में उपयोग करना — घूमता आइकन, निर्धारित बार और अनिर्धारित।
क्षणिक गैर-मोडल फीडबैक दिखाना जो स्वयं प्रकट होता है और स्वयं गायब हो जाता है।
Cancelar/OK बटनों वाला एक मोडल पुष्टि डायलॉग खोलना और चयन पर प्रतिक्रिया देना।
अकेला Option checkbox बन जाता है; एक Group में कई Option radio बन जाते हैं (अनन्य चयन)।
एक ड्रॉपडाउन सूची खोलें, चयन पर प्रतिक्रिया दें और चयनित आइटम प्राप्त करें।
मुद्रा मास्क, फ़ील्ड जाँच, पासवर्ड फ़ील्ड और रिस्पॉन्सिव फ़ॉर्म — चारों प्लेटफ़ॉर्म पर एक जैसे।
नेटिव न्यूमेरिक कीबोर्ड, अंतर्निहित Keypad या कैलकुलेटर के बीच चुनें।
मास्क के साथ CPF, CEP और तिथियों को स्वचालित रूप से फ़ॉर्मैट करें और साफ़ अंक पढ़ें।
एक फ़ील्ड जो टैप करने पर DatePicker या TimePicker खोलता है और locale के अनुसार फ़ॉर्मैट करता है।
स्वचालित मौद्रिक फ़ॉर्मैटिंग, दशमलव स्थानों और संख्यात्मक मान की रीडिंग वाला फ़ील्ड।
दृश्यता टॉगल बटन के साथ मास्क किया गया पासवर्ड फ़ील्ड।
GridLayout के साथ लेबल और फ़ील्ड को आनुपातिक कॉलमों में संरेखित करें।
वर्णों को प्रतिबंधित करें, लंबाई सीमित करें और सबमिट करने से पहले साफ़ मान पढ़ें।
लंबी सूचियाँ बिना अटके: पेजिनेशन, माँग पर और लोड करना, और स्क्रॉल व ओवरस्क्रॉल पर नियंत्रण।
ItemFactory के जरिए कस्टम पंक्तियों के साथ किसी सूची को केंद्रित मोडल विंडो के रूप में खोलें।
views को रीसायकल करते हुए VirtualListView + DataAdapter के साथ विशाल सूचियाँ रेंडर करें (RecyclerView शैली)।
टेक्स्ट की सूची दिखाएँ और ListView के साथ चयन कैप्चर करें (SINGLE या MULTIPLE)।
जब उपयोगकर्ता वर्चुअल सूची के अंत के पास पहुँचे तो स्वचालित रूप से अधिक आइटम संलग्न करें।
VirtualListView के ऊपर PagedDataAdapter (LRU कैश) के साथ माँग पर पृष्ठ लोड करें।
setScrollable के साथ किसी भी Component में स्क्रॉल सक्षम करें और लचीला किनारा प्रभाव कॉन्फ़िगर करें।
स्क्रीन खोलना-बंद करना, उनके बीच डेटा भेजना और नतीजा वापस लेना, पुष्टि डायलॉग सहित।
show() और hide() के साथ स्क्रीन को स्टैक पर चढ़ाएँ (push) और उतारें (pop), UI को onShow() में बनाएँ।
EventsProcessor स्टैक के push/pop को अपने controller में समाहित करें, ताकि नेविगेशन परीक्षण-योग्य और असंबद्ध हो।
buttonAction के साथ पुष्टि का Alert दिखाएँ, पृष्ठभूमि को गहरा करें और Hint से फ़ीडबैक दें।
एक स्क्रीन खोलें और वापस एक मान प्राप्त करें — pickers के लिए show(onAnswer) के माध्यम से, सामान्य स्क्रीन के लिए कंस्ट्रक्टर में callback के माध्यम से।
कैमरा, GPS, बायोमेट्रिक्स, ब्लूटूथ, वाइब्रेशन और क्लिपबोर्ड — उसी Java कोड से डिवाइस हार्डवेयर।
उपलब्धता जाँचें और उपयोगकर्ता को फ़िंगरप्रिंट, Face ID या Windows Hello से प्रमाणित करें।
उपयोगकर्ता को LocationPicker के माध्यम से एक निर्देशांक (LatLon) की पुष्टि करने के लिए खींचने योग्य पिन और GPS वाला मानचित्र खोलें।
Bluetooth डिवाइस खोजें, कनेक्ट करें और GATT विशेषताओं से पढ़ें/सूचनाएँ प्राप्त करें।
वीडियो रिकॉर्ड करें (ऑडियो के साथ या बिना), गुणवत्ता और अवधि सीमा निर्धारित करें, और MP4 का पथ प्राप्त करें।
BarcodePicker का उपयोग करके कैमरे से QR/बारकोड स्कैन करें, या CameraBarcode के साथ किसी Image को डिकोड करें।
Location + retrieveGPSData() के साथ डिवाइस के GPS से निर्देशांक पढ़ें, या GPSThread के साथ निरंतर ट्रैक करें।
डिवाइस के कैमरे से एक फ़ोटो कैप्चर करें और सहेजे गए JPEG का पथ प्राप्त करें।
किसी पाठ को ज़ोर से बोलें और उपयोगकर्ता की वाणी को पाठ में लिप्यंतरित करें, locale/गति की कॉन्फ़िगरेशन के साथ।
डिवाइस से त्वरित प्रतिक्रिया — कंपन, बीप ध्वनि और क्लिपबोर्ड से कॉपी/पेस्ट।
गैलरी या कैमरा से इमेज लाना, थंबनेल बनाना और डिवाइस की मेमोरी भरे बिना सहेजना।
Main.getScreenShot के साथ वर्तमान backbuffer को Image के रूप में कैप्चर करें और उसे सहेजें।
किसी स्थानीय फ़ाइल से या नेटवर्क से डाउनलोड किया गया PNG/JPEG/GIF लोड करें और उसे ImageView के साथ प्रदर्शित करें।
addBackgroundImage और ImageSize के साथ किसी भी Component में पृष्ठभूमि छवि जोड़ें।
resize() के साथ किसी छवि को लघुचित्र में आकार दें, मोड और गुणवत्ता चुनते हुए।
किसी Image को डिस्क पर (टाइमस्टैम्प वाली फ़ाइल) या किसी OutputStream में, PNG या JPEG में रिकॉर्ड करें।
फ़ेड, लूप पल्स, कंपोनेंट हिलाना और स्क्रीन ट्रांज़िशन — CrossFly के value animator के साथ।
show()/hide() से पहले WindowStyle में एक ट्रांज़िशन (slide, fade, scale) कॉन्फ़िगर करें — CrossFly स्क्रीन बदलने को अपने आप एनिमेट करता है।
LoopAnimation के साथ किसी वैल्यू को अनंत चक्र में एनिमेट करें, जो लोडिंग संकेतकों और ग्लो इफ़ेक्ट के लिए उपयोगी है।
AlphaAnimation के साथ किसी कंपोनेंट की ओपेसिटी को एनिमेट करें, alpha() के माध्यम से वैल्यू लागू करते हुए और माँग पर पुनः पेंट करते हुए।
PositionAnimation (पिक्सेल में रैखिक इंटरपोलेशन) के साथ किसी कंपोनेंट को एक बिंदु से दूसरे बिंदु तक सरकाएँ।
व्यवहार में SQLite: डेटाबेस खोलना, पैरामीटर के साथ CRUD, ट्रांज़ैक्शन और भारी काम paint thread से बाहर।
try-with-resources के साथ एक .db फ़ाइल खोलें/बनाएँ, इन-मेमोरी डेटाबेस उपयोग करें और टेबल बनाएँ।
SQLite क्वेरियाँ एक worker thread में चलाएँ और Component.onUI के साथ UI पर लौटें।
हजारों पंक्तियाँ तेज़ी से डालें — ट्रांज़ैक्शन, reset() के साथ पुनः उपयोग किया गया statement, या नेटिव bulkInsert।
पोज़िशनल पैरामीटर और cursor के साथ डालें, पढ़ें, अपडेट करें और मिटाएँ, बिना SQL को जोड़े।
कुंजी के साथ खोलना, सिफर चुनना, कुंजी बदलना/हटाना और गलत कुंजी का पता लगाना।