मैं चाहता हूं कि एक बटन दबाकर कुछ देरी के साथ एक नई गतिविधि शुरू होनी चाहिए। क्या ऐसा करना संभव है, और प्रक्रिया क्या है।एंड्रॉइड में बटन दबाए जाने के बाद कुछ देरी के साथ एक अलग गतिविधि कैसे शुरू करें?
उत्तर
आप हैंडलर पोस्टडेलेड() विधि का उपयोग करके रननेबल को कॉल कर सकते हैं।
private Handler mHandler = new Handler();
...
OnClickListener mStartListener = new OnClickListener() {
public void onClick(View v) {
mHandler.postDelayed(mUpdateTimeTask, 100);
}
};
private Runnable mUpdateTimeTask = new Runnable() {
public void run() {
// do what you need to do here after the delay
}
};
प्रॉप्स यह सही पहली बार प्राप्त करने के लिए @mad रहे हैं:
यहाँ एक उदाहरण (http://developer.android.com/resources/articles/timed-ui-updates.html) है ।
आप के postDelayed(Runnable action, long delayMillis)
विधि Runnable
को Runnable
को संदेश कतार में (अनुमानित) देरी के बाद चलाने के लिए उपयोग कर सकते हैं।
यह यूआई थ्रेड को अवरुद्ध किए बिना आपके वांछित व्यवहार की अनुमति देगा। –
एक पोस्टडेलेड() कॉल का उपयोग करें जो आपकी गतिविधि को लॉन्च करने योग्य है। एक उदाहरण कोड हो सकता है
//will care for all posts
Handler mHandler = new Handler();
//the button's onclick method
onClick(...)
{
mHandler.postDelayed(mLaunchTask,MYDELAYTIME);
}
//will launch the activity
private Runnable mLaunchTask = new Runnable() {
public void run() {
Intent i = new Intent(getApplicationContext(),MYACTIVITY.CLASS);
startActivity(i);
}
};
ध्यान दें कि यह सुविधा देता है इंटरफ़ेस प्रतिक्रियाशील रहते हैं। फिर आपको अपने बटन से ऑनक्लिक श्रोता को हटाने की देखभाल करनी चाहिए।
उपयोग इस कोड
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
final Intent mainIntent = new Intent(CurrentActivity.this, SecondActivity.class);
LaunchActivity.this.startActivity(mainIntent);
LaunchActivity.this.finish();
}
}, 4000);
कभी कभी, यू यह करने के लिए जब भी आपके एप्लिकेशन प्रक्रिया या नहीं मारा है की जरूरत है। उस स्थिति में आप अपनी प्रक्रिया के अंदर चलने योग्य या संदेश हैंडलिंग का उपयोग नहीं कर सकते हैं। इस मामले में आप केवल इस पर AlarmManager का उपयोग कर सकते हैं। आशा है कि इस उदाहरण में मदद करता है किसी को भी:
Intent intent = new Intent();
...
PendingIntent pendingIntent = PendingIntent.getActivity(<your context>, 0, intent, PendingIntent.FLAG_ONE_SHOT);
AlarmManager mgr = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
mgr.set(AlarmManager.RTC, <your delay>, pendingIntent);
runOnUiThread(new Runnable() {
@Override
public void run() {
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
startActivity(intent);
}
}, 4000);
}
});
अगर मैं पूछना तुम क्यों महसूस किया आप देरी की जरूरत कोड
new Timer().schedule(new TimerTask() {
@Override
public void run() {
// run AsyncTask here.
}
}, 3000);
- 1. बटन दबाए जाने पर बार-बार कुछ कैसे करें?
- 2. बटन दबाए जाने पर थ्रेड कैसे शुरू करें और फिर दबाए जाने पर इसे रोकें?
- 3. पीईक्यूटी संवाद - बटन दबाए जाने के बाद इसे कैसे छोड़ें?
- 4. कुछ समय अवधि के बाद गतिविधि कैसे शुरू करें?
- 5. बैक बटन दबाए जाने पर मैं गतिविधि को कैसे मारूं?
- 6. एंड्रॉइड: बटन के बाद देरी कैसे डाली जाती है?
- 7. एंड्रॉइड - बटन दबाए जाने पर लेआउट में टेक्स्टव्यू जोड़ें
- 8. बटन दबाए जाने पर मैं गतिविधि में लंबवत रेखा कैसे खींच सकता हूं?
- 9. ओके बटन दबाए जाने पर एंड्रॉइड कैमरा गतिविधि मेरे ऐप पर वापस नहीं आती है
- 10. एंड्रॉइड विगेट्स के दो बटन अलग-अलग इरादों के साथ समान गतिविधि को कॉल करते हैं
- 11. कॉलिंग फिनिश() एक नई गतिविधि शुरू करने के बाद
- 12. किसी गतिविधि के बिना एंड्रॉइड में सेवा कैसे शुरू करें
- 13. Jquery देरी के बाद
- 14. टिंकर में बटन दबाए जाने के बाद एंट्री विजेट को कैसे साफ़ किया जाए?
- 15. बटन दबाए जाने पर कई कमांड हैं
- 16. jQuery - बटन दबाए जाने पर काउंटर के मूल्य को बढ़ाएं
- 17. बटन दबाए जाने के बाद हर 10 मिनट में एक विधि दोहराएं और इसे किसी अन्य बटन पर दबाएं
- 18. एंड्रॉइड - बैक बटन दबाए जाने पर AsyncTask को रोकें और पिछली गतिविधि
- 19. शीर्ष कोने पर एक बंद बटन के साथ एंड्रॉइड में गतिविधि कैसे करें?
- 20. एंड्रॉइड: एक गतिविधि में एकाधिक विकल्प मेनू
- 21. रेल: बैक बटन दबाए जाने के बाद डुप्लिकेट आवेषण को रोकें और फिर से सहेजें
- 22. लंबे समय तक बटन दबाए जाने पर एक क्रिया दोहराएं
- 23. एंड्रॉइड: एक अलग थर्ड पार्टी ऐप के लिए एक गतिविधि शुरू करना
- 24. एंटर दबाए जाने पर फॉर्म सबमिट करें
- 25. बटन दबाए जाने पर फ़ंक्शन को कॉल करें - pyqt
- 26. एएसपी.नेट सी #, कुछ होने के लिए दो बार बटन दबाए जाने की आवश्यकता है
- 27. पुशस्टेट के बाद, दबाए जाने पर पृष्ठ को फिर से लोड कैसे करें?
- 28. F5 या रीफ्रेश बटन दबाए जाने पर पृष्ठ के केवल एक हिस्से को रीफ्रेश करें
- 29. बटन दबाए जाने पर तत्व को फोकस कैसे न खोएं?
- 30. एक गतिविधि से एंड्रॉइड सेवा कैसे शुरू करें और दूसरी गतिविधि में सेवा बंद करें?
मन के इस टुकड़े की कोशिश? मैंने देखा कि यह काम के लिए एक पुरानी परियोजना में लिखा गया है, मुझे यकीन नहीं है कि उन्होंने ऐसा क्यों करना चुना। – AdamMc331