मुख्य सामग्री पर जाएँ
CrossFly 100% ओपन सोर्सGitHub पर फ़ॉलो करें
CrossFlyCrossFly
शुरू करें

यह पृष्ठ पुर्तगाली से मशीन-अनुवादित है और इसमें त्रुटियाँ हो सकती हैं। पुर्तगाली संस्करण प्रामाणिक है।

Hint

Hint CrossFly की क्षणिक गैर-मोडल सूचना है: यह आमतौर पर स्क्रीन के निचले हिस्से के पास दिखाई देती है, एक छोटा संदेश दिखाती है और कुछ समय बाद स्वयं गायब हो जाती है (fade के साथ)। यह बाकी UI के साथ इंटरैक्शन को अवरुद्ध नहीं करती। यह पुराने Toast का आधुनिकीकृत विकल्प है — वही API — और पुराने ToolTip के मामले को भी कवर करती है (दोनों को फ्रेमवर्क से हटा दिया गया)।

Hint Window को विस्तारित नहीं करती: यह एक उपयोगिता क्लास है जिसमें स्थैतिक API है जो आंतरिक रूप से एक ToastWindow बनाती है।

🟢 · पैकेज: dev.crossfly.ui · विस्तारित करता है: — (स्थैतिक उपयोगिता) · कॉन्फ़िग: स्थैतिक फ़ील्ड

कब उपयोग करें

  • निष्क्रिय और संक्षिप्त फ़ीडबैक: “Salvo!”, “Falha ao conectar”, “Copiado”।
  • क्षणिक स्थिति जिसके लिए उपयोगकर्ता की कार्रवाई की आवश्यकता नहीं।

कब उपयोग न करें

  • कुछ ऐसा जिसके लिए निर्णय/पुष्टि की आवश्यकता हो → Alert या ActionSheet का उपयोग करें।

दिखावट

गहरे रंग का गोल कैप्सूल (डिफ़ॉल्ट 0xFF303030, सफेद पाठ) क्षैतिज रूप से केंद्रित, स्क्रीन की ऊंचाई के ~85% पर स्थित। सौम्य fade के साथ उभरता और गायब होता है।

पूर्ण उदाहरण (कॉपी, पेस्ट और रन करें)

package com.exemplo;

import dev.crossfly.ui.*;
import dev.crossfly.ui.layout.*;

/** चलाने योग्य मुख्य स्क्रीन। launcher (classname) की ओर संकेत करें और चलाएँ: gradlew :lwjgl3:run */
public class MainWindow extends Window
{
   @Override
   public void onShow() throws Exception
   {
      super.onShow();
      setLayout(new VerticalLayout());

      Label titulo = new Label("Toque para ver um Hint");
      add(LAY_AUTO, titulo);

      // Hint स्थिर है: एक Button onAction में क्षणिक सूचना ट्रिगर करता है
      Button salvar = new Button("Salvar")
         .onAction(c -> Hint.show("Salvo com sucesso!", 2000));
      add(LAY_AUTO, salvar);

      Button falhar = new Button("Simular erro")
         .onAction(c -> Hint.show("Falha ao conectar", 2500));
      add(LAY_AUTO, falhar);
   }
}

नीचे दिए गए अंश केवल मुख्य भाग दिखाते हैं (जो onShow() के अंदर जाता है)। रन करने के लिए, इन्हें ऊपर दिए MainWindow ढांचे में रखें।

बुनियादी उपयोग

// संदेश 2 सेकंड तक दिखता है, फिर अपने आप गायब हो जाता है
Hint.show("Salvo com sucesso!", 2000);

प्रदर्शन API (स्थैतिक)

ओवरलोड विवरण
Hint.show(String message, int delay) डिफ़ॉल्ट स्थिति/padding।
Hint.show(String message, int delay, Window parentWindow) पैरेंट विंडो परिभाषित करता है।
Hint.show(String message, int delay, Window parentWindow, Relative at, Gap innerGap) पूर्ण रूप: ऊर्ध्वाधर स्थिति (at) और आंतरिक padding (innerGap)।

पहले दो अनुपस्थित फ़ील्ड में null के साथ तीसरे को सौंपते हैं।

पैरामीटर प्रकार अर्थ
message String पाठ। null छुपाता है वर्तमान hint को।
delay int दृश्यमान मिलीसेकंड। INFINITE/INFINITE_NOANIM स्क्रीन पर बनाए रखते हैं।
parentWindow Window वैकल्पिक पैरेंट; डिफ़ॉल्ट = शीर्ष विंडो।
at Relative START(ऊपर) / CENTER / END(नीचे) या सापेक्ष मान। null position का उपयोग करता है।
innerGap Gap आंतरिक padding। null स्थैतिक ingap का उपयोग करता है।

वैश्विक कॉन्फ़िगरेशन (स्थैतिक फ़ील्ड)

पूरी दिखावट साझा स्थैतिक द्वारा नियंत्रित होती है — इन्हें बदलना बाद के सभी hints को प्रभावित करता है।

फ़ील्ड प्रकार डिफ़ॉल्ट क्या करता है
Hint.backColor int 0xFF303030 पृष्ठभूमि रंग।
Hint.foreColor int WHITE पाठ का रंग।
Hint.position Relative Relative.ofScreen(0.85f) डिफ़ॉल्ट ऊर्ध्वाधर स्थिति।
Hint.ingap Gap Gap.ofFont(0.7f, 0.35f, 0.7f, 0.35f) डिफ़ॉल्ट आंतरिक padding।
Hint.font Font Font.get().bold() पाठ का फ़ॉन्ट।
Hint.fade int 200 एनिमेटेड मोड में alpha का लक्ष्य।
Hint.INFINITE int Integer.MAX_VALUE एनिमेशन के साथ अनंत अवधि।
Hint.INFINITE_NOANIM int Integer.MIN_VALUE एनिमेशन के बिना अनंत अवधि।

अवस्थाएं

  • जब delay परिमित हो तो समय के अनुसार स्वतः-बंद।
  • INFINITE/INFINITE_NOANIM के साथ स्थायी — इसे Hint.show(null, 0) से मैन्युअल रूप से बंद करना पड़ता है।
  • Hints एक-दूसरे पर नहीं जुड़ते: एक नया वर्तमान को बदल देता है।

शीर्ष पर त्रुटि, लाल रंग में, स्थैतिक को पुनर्स्थापित करते हुए

Hint.backColor = 0xFFB00020;
Hint.show("Falha ao salvar", 2500, null, Relative.START, null);
Hint.backColor = 0xFF303030; // अगले hints के लिए default को पुनर्स्थापित करता है

स्थायी Hint और मैन्युअल हटाना

Hint.show("Conectando...", Hint.INFINITE);
// ... जब समाप्त हो:
Hint.show(null, 0); // message == null वर्तमान hint को छिपा देता है

Gap के माध्यम से कस्टम padding

Hint.show("Detalhes copiados", 1800, null, Relative.CENTER, Gap.ofFont(1f, 0.5f, 1f, 0.5f));

सर्वोत्तम प्रथाएं

  • निष्क्रिय और संक्षिप्त फ़ीडबैक के लिए उपयोग करें; निर्णयों के लिए कभी नहीं।
  • बिंदुवत समायोजन के लिए, स्थैतिक को म्यूटेट करने के बजाय कॉल में at/innerGap पास करना प्राथमिकता दें।
  • किसी स्थैतिक को वैश्विक रूप से म्यूटेट करते समय (जैसे backColor), स्थिति को लीक न करने के लिए बाद में पुनर्स्थापित करें।

सामान्य गलतियां

  • INFINITE बिना बंद किए — स्क्रीन पर हमेशा बना रहता है; Hint.show(null, ...) से बंद करें।
  • शीर्ष पर कोई विंडो नहीं (खाली स्टैक) — hint बस दिखाई नहीं देता।
  • hints के जमा होने की अपेक्षा करना — नहीं; नया पिछले को बदल देता है।

माइग्रेशन (Toast/ToolTip हटाए गए)

Toast.show(...) 1:1 Hint.show(...) में माइग्रेट होता है (वही सिग्नेचर और स्थैतिक)। ToolTip का कोई सीधा विकल्प नहीं है (अब press-and-hold नहीं है) — यदि आपको क्षणिक संकेत चाहिए तो at/position के साथ स्थित Hint का उपयोग करें।

यह भी देखें

  • क्षेत्र गाइड: ui/ · रेसिपीज़: cookbook/
  • संबंधित कॉम्पोनेंट: Alert · ActionSheet
क्या यह पृष्ठ उपयोगी था?