بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ

مشکل ارتباط اکتیویتی اصلی با ویجت (حل شد)

مدیریت گفتگو
FSR 10 سال پیش
آخرین تغییر: 10 سال پیش

سلام 

این ویجت من هستش

و همه ی قسمت هاش درست کار میکنه فقط یه مشکلی هست اونم اینکه میخوام وقتی روی دکمه Set Name کلیک کردم به جای Name داخل ویجت  اسم وارد شده داخل EditeText جایگزین بشه 

داخل اینترنت هم گشتم چیزه درستو حسابی نبود 

اینم کد هام :

ویجت

  public class ExampleAppWidgetProvider extends AppWidgetProvider {
    @Override
    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
        super.onUpdate(context, appWidgetManager, appWidgetIds);
        final int count = appWidgetIds.length;

        for (int i = 0; i < count; i++) {
            int widgetId = appWidgetIds[i];
            G.num++;
            Log.i("Number", G.num + "");

            RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget1);
            remoteViews.setTextViewText(R.id.textView, "" + G.num);

            Intent intent = new Intent(context, ExampleAppWidgetProvider.class);
            intent.setAction(AppWidgetManager.ACTION_APPWIDGET_UPDATE);
            intent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS, appWidgetIds);
            PendingIntent pendingIntent = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
            remoteViews.setOnClickPendingIntent(R.id.bRefresh, pendingIntent);
            appWidgetManager.updateAppWidget(widgetId, remoteViews);
        }
}

اینم اکتیویتی اصلی :

 public class SimpleWidgetActivity extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        /* 
         * 
         * 
         * ????????????????????????????????
         * 
         * 
         * 
         * *
         */
        
        
    }
}

ممنون میشم کمک کنید




نظرات

FSR 10 سال پیش
کسی تا به حال با ویجت ها کار نکرده یعنی ؟

پاسخ‌ها 1

مشاهده پاسخ صحیح
FSR 10 سال پیش

 پاسخ صحیح
 btnSet.setOnClickListener(new OnClickListener() {

            public void onClick(View arg0) {
                Context context = SimpleWidgetActivity.this;
                AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(context);
                RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget1);
                ComponentName thisWidget = new ComponentName(context, ExampleAppWidgetProvider.class);
                remoteViews.setTextViewText(R.id.txtTitel, edt.getText().toString());
                appWidgetManager.updateAppWidget(thisWidget, remoteViews);
                finish();

            }
        });

نظرات

احمد 10 سال پیش
اگه امکانشو داری بگو چطوری ساختی اگه پروژه شخصی نیست ممنون
FSR 10 سال پیش
از من میشنوید دور ویجت رو خط بکشید خیلی نحوه ی کد نویسش افتضاح هستش فکر کنم یکی از دلایلی که استاد این قسمت رو آموزش ندادن همین هست ! کلا تمام قواعد کد نویسی رو زیر پا گذاشتن جالب اینجاست که فقط میتونی از تعداد محدودی از کنترل ها استفاده کنی ! با این وجود اگه باز خواستید بگید آموزشش رو تویه یه تاپیک جداگونه بزارم !

پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .