मैंने एंड्रॉइड में विजेट बनाया है और यह सफलतापूर्वक काम करता है, लेकिन अब मैं विजेट के क्लिक इवेंट पर उपयोग करना चाहता हूं ताकि मैं उससे नई गतिविधि खोल सकूं।क्लिक ईवेंट पर एंड्रॉइड विजेट
सहायता मुझे
मैंने एंड्रॉइड में विजेट बनाया है और यह सफलतापूर्वक काम करता है, लेकिन अब मैं विजेट के क्लिक इवेंट पर उपयोग करना चाहता हूं ताकि मैं उससे नई गतिविधि खोल सकूं।क्लिक ईवेंट पर एंड्रॉइड विजेट
सहायता मुझे
अपने लेआउट के अंदर, उस विशेष विजेट के लिए दे
android:onClick="your method name inside your activity"
और अपनी गतिविधि में, दे:
public void methodname(View view) {
//give your intent code here
}
नोट: जब आप इस तरह की एक विधि कॉल, आपकी विधि सार्वजनिक होनी चाहिए और इसमें दृश्य वस्तु को पैरामीटर के रूप में होना चाहिए।
एंड्रॉइड: ऑनक्लिक केवल एंड्रॉइड 1.6+ – Raunak
पर उपलब्ध है जो एंड्रॉइड संस्करण आप उपयोग कर रहे हैं? – Mathew
एंड्रॉइड: ऑनक्लिक विजेट्स में समर्थित नहीं है। यदि आपके पास यह है, तो विजेट होम स्क्रीन में भी दिखाई नहीं देगा - यह त्रुटि संदेश प्रदर्शित करेगा जो विजेट लोड करने में विफल रहा है ... – coolcool1994
मैं इस प्रयोग किया है:
// Create an Intent to launch ExampleActivity
Intent intent = new Intent(context, Mainpage.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
remoteViews.setOnClickPendingIntent(R.id.widget, pendingIntent);
हाँ, लेकिन विजेट कहां क्लिक किया जाएगा, लेकिन विधि कहां क्लिक की जाएगी? – KalEl
धन्यवाद ... इससे मदद मिली –
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager,
int[] appWidgetIds) {
for (int i = 0; i < appWidgetIds.length; i++) {
int appWidgetId = appWidgetIds[i];
Intent intent = new Intent(context, TaskManagerActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget);
views.setOnClickPendingIntent(R.id.widget_layout, pendingIntent);
appWidgetManager.updateAppWidget(appWidgetId, views);
}
}
widget.xml में मैं जब आप सही रूप में किसी भी सवाल का जवाब मिल जाए, इसे स्वीकार लेकिन टिक डाल widget_layout
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/widget_layout"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:paddingTop="10dip"
android:paddingLeft="10dip"
android:orientation="vertical">
यह मेरे लिए काम किया, धन्यवाद :) –
हाय @xtem, मुझे विजेट आईडी का पता लगाने में समस्या का सामना करना पड़ रहा है। मैंने अपनी होम स्क्रीन पर 3 विजेट बनाए और मैं प्रत्येक की थीम को अलग से बदलना चाहता हूं। तो जब मैं विजेट पर क्लिक करता हूं तो मेरा कॉन्फ़िगरेशन क्लास खोला जाता है और अद्यतन() पर मेरे प्रत्येक विजेट अपडेट होते हैं। क्या मैं इसे अलग से कर सकता हूं? –
आईडी के साथ मूल तत्व LinearLayout है निशान। – Mathew
देखें http://stackoverflow.com/questions/2748590/clickable-widgets-in-android –