के रूप में मैं एक स्थान श्रोता गतिविधि है और मैं टोस्ट सूचनाएं बनाना चाहते हैं। लेकिन यह संदर्भ के रूप में मुझे this
पास नहीं करने देगा। मुझे टोस्ट कैसे काम करना चाहिए?टोस्ट का उपयोग कैसे करें जब मैं नहीं कर सकते का उपयोग "इस" संदर्भ
उत्तर
टोस्ट अपनी गतिविधि वर्ग के अंदर स्थित है, तो आप yous सकता है YourActiviy.this
जहां YourActivity
वर्ग के नाम है। अगर यह अपनी कक्षा के बाहर है, तो आप अपनी गतिविधि संदर्भ (निर्माता आदि में इसे पारित)
यह काम नहीं किया है, लेकिन अब –
आप उदाहरण के लिए उपयोग कर सकते हैं NameOfYourActivity.this
:
public class MyActivity extends Activity {
...
Toast.makeText(MyActivity.this, text, duration).show();
गतिविधि कर दूंगा एक 'locationlistener' तो यह त्रुटि विधि' makeText (संदर्भ, CharSequence, पूर्णांक) प्रकार टोस्ट में तर्क (mylocationlistener, स्ट्रिंग, पूर्णांक) के लिए लागू नहीं है देता है ' –
@Seth - locationlistener एक गतिविधि नहीं है। – MByD
आपको अपना कोड अपने ओपी में पेस्ट करना चाहिए, हमारे लिए आपकी मदद करना आसान होगा। क्योंकि मेरे सेटअप गलत था – ccheneson
ऐसा लगता है कि आप गतिविधि में एक आंतरिक वर्ग में हैं पाने के लिए की आवश्यकता होगी। यदि ऐसा है, तो ActivityName.this आज़माएं।
आप भीतरी कक्षा में कर रहे हैं तो यह भी
getApplicationContext()
ध्यान रखें करता है। यदि आप UI थ्रेड बंद हैं तो यह काम नहीं करेगा। –
उदाहरण के लिए, इस कोड की कोशिश करता है, तो आप एक विधि "onComplete" इसके अंदर बुलाया के साथ एक श्रोता है, कार्य करना चाहिए।
public void onComplete(String response, Object state) {
final String response_complete = response;
MyActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
Toast.makeText(MyActivity.this, text, duration).show();
}
});
}
ऐसा करना चाहिए।
बजाय getApplicationContext कोशिश()
Toast tea = Toast.makeText(getApplicationContext(), "Send", Toast.LENGTH_LONG);
tea.show();
फील्ड चर: Context context;
: context = this;
Xamarin/सी # सिंटेक्स: Toast.MakeText(context, "your message", ToastLength.Long).Show();
एंड्रॉयड/जावा वाक्य रचना: Toast.makeText(context, "your message", Toast.LENGTH_LONG).show();
आप गतिविधि कोड और त्रुटि संदेश पोस्ट कर सकते हैं? आपको किसी गतिविधि के भीतर से एक वैध संदर्भ प्राप्त करने में सक्षम होना चाहिए। –
'विधि टोस्ट (संदर्भ, charSequence, int) प्रकार टोस्ट में तर्क (mylocationlistener, स्ट्रिंग, int) ' –
के लिए लागू नहीं है, मैंने फैसला किया है कि मैं स्थानसूची को गतिविधि में एक उप वर्ग –