2012-08-28 9 views
8

है, मैं एंड्रॉइड 4.1 मोबाइल में टोस्ट संदेश नहीं देख सकता। कल तक मैं टोस्ट संदेश देख पा रहा था। आज से ही मैं संदेश नहीं देख सकता। क्रिप्या मेरि सहायता करे।क्यों एंड्रॉइड 4.1 ऑपरेटिंग सिस्टम में टोस्ट संदेश नहीं दिखाया गया है जिसमें मोबाइल

Toast.makeText(getApplicationContext(), "hi", Toast.LENGTH_SHORT).show(); 

मैंने टोस्ट संदेश के बजाय कस्टम टोस्ट संदेश भी आजमाया है। लेकिन अभी भी काम नहीं कर रहा है।

कस्टम टोस्ट:

LayoutInflater inflater=getLayoutInflater(); 
View layout = inflater.inflate(R.layout.toast_layout,(ViewGroup) findViewById(R.id.toast_layout_root)); 
TextView text = (TextView) layout.findViewById(R.id.text); 
text.setText("Please fill Name"); 
Toast toast = new Toast(getApplicationContext()); 
toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0); 
toast.setDuration(Toast.LENGTH_LONG); 
toast.setView(layout); 
toast.show(); 
+4

कृपया अपना कोड या लॉग निशान साझा करें। – fiddler

+0

अगर (first_name.length() <1 || first_name == नल) \t \t \t { \t \t \t \t Toast.makeText (getApplicationContext(), "कृपया भरने का नाम", Toast.LENGTH_SHORT) .show(); \t \t \t \t उपयोगिताएँ।writeIntoLog ("कृपया नाम भरें"); \t \t \t \t} – AndroidRaji

+0

मैंने अभी 4.1 डिवाइस पर इसका परीक्षण किया और यह काम किया .. क्या आप सुनिश्चित हैं कि आपकी 'first_name' स्ट्रिंग वास्तव में खाली है? – fiddler

उत्तर

8

इस को बदलें और फिर से जाँच करें।

if(first_name.length() == 0) 
{ 
    Toast.makeText(NameOfYourActivity.this, "Please fill Name", Toast.LENGTH_SHORT).show(); 
    Utilities.writeIntoLog("Please fill Name"); 
} 
+0

देखें कि मैं आकाशगंगा, एमुलेटर में टोस्ट संदेश देख सकता हूं। लेकिन मैं नेक्सस में नहीं देख सकता (ओएस 4.1) – AndroidRaji

+0

@AndroidRaji मैं सिर्फ यह जांचना चाहता हूं कि यह कोड नेक्सस (4.1) में काम कर रहा है। तो कृपया मेरा कोड आज़माएं और मुझे मौसम बताएं कि यह काम कर रहा है या नहीं। –

+0

आपको अभी भी नल चेक भी चलाना चाहिए। – slybloty

2

टोस्ट एंड्रॉइड के सभी संस्करणों में ठीक काम कर रहा है। जैसे

  1. आपका संदर्भ अपने कोड में मुद्दों की जोड़ी नहीं हो सकता है गलत
  2. आप कार्यकर्ता थ्रेड के बजाय पृष्ठभूमि सूत्र में टोस्ट प्रदर्शित करने के लिए कोशिश कर रहे हैं नहीं है।

संपादित अपने कस्टम टोस्ट में अपने लेआउट inflater में माता-पिता के लिए सेट नहीं उदाहरण के लिए नीचे दिए गए

View layout = inflater.inflate(R.layout.toast_layout,null); 
+0

Plz मुझे बताएं पृष्ठभूमि पृष्ठभूमि और कार्यकर्ता धागा क्या है। क्या आप मुझे दोनों के लिए उदाहरण कोड दे सकते हैं। – AndroidRaji

+0

वर्कर थ्रेड मुख्य थ्रेड है जिसमें आपका सभी ड्राइंग और एनीमेशन चलता है और यह आपके एप्लिकेशन के यूआई को अपडेट करने के लिए ज़िम्मेदार भी है। आप मुख्य (UI) थ्रेड के बारे में दस्तावेज़ पढ़ सकते हैं। प्रत्येक एप्लिकेशन में एक मुख्य धागा होता है और पृष्ठभूमि थ्रेड वे होते हैं जिन्हें आप पृष्ठभूमि प्रक्रिया – Dharmendra

+0

के लिए बनाते हैं बहुत धन्यवाद ... – AndroidRaji

7

बस यहाँ गूगल कोड लिंक पोस्ट का उपयोग करते हैं।

जेली बीन के बाद से, उपयोगकर्ता "ऐप विवरण" सेटिंग्स के माध्यम से दिए गए ऐप के लिए अधिसूचनाएं अक्षम कर सकते हैं।

एक बहुत बुरा और अवांछित साइड इफेक्ट यह है कि एक बार नोटिफ़ अक्षम होने पर, टोस्ट संदेश भी अक्षम होते हैं, भले ही उपयोगकर्ता ऐप चला रहा हो!

आप अपने डिजाइन के दिशा निर्देशों में टोस्ट का उपयोग करने के लिए प्रोत्साहित करते हैं, लेकिन जो इसे उपयोग करने के लिए करता है, तो उन उन्हें हटाने के लिए, खासकर यदि भुने हुए संदेश उपयोगकर्ता के लिए प्रदर्शित करने के लिए एक महत्वपूर्ण प्रतिक्रिया है संभावना है चाहता हूँ ...

मैं कम से कम समझता हूं कि ऐप पृष्ठभूमि में होने पर टोस्ट अक्षम किया जा सकता है, लेकिन अगर यह अग्रभूमि गतिविधि नहीं है।

48

टोस्ट एंड्रॉइड 4.1 में मेरे साथ नहीं दिखा रहा था क्योंकि मेरे ऐप की सेटिंग्स में नोटिफिकेशन दिखाया गया था। मैं बस सेटिंग-> एप्लिकेशन प्रबंधित करें -> [मेरा ऐप] पर गया और शो नोटिफिकेशन और टोस्ट्स पर टॉगल करने लगे।

+2

धन्यवाद @herman। मैंने टोस्ट संदेश प्रदर्शित करने के सभी तरीकों का प्रयास किया और अटक गया, लेकिन आपकी पोस्ट मुझे कारण खोजने में मदद करती है। – Shweta

+2

मुझे यह सुनकर खुशी हुई। धन्यवाद। –

+2

धन्यवाद @hrehman आप के लिए upvote। –

0

मुझे एक ही समस्या थी। जब मैंने यूआई थ्रेड पर कोड का आह्वान किया तो मेरे लिए समस्या

public void showToastMessage(final String msg) { 

    runOnUiThread(new Runnable() { 
     @Override 
     public void run() { 
      Toast.makeText(BaseActivity.this, msg, Toast.LENGTH_LONG).show(); 
     } 
    }); 
}