2013-02-01 32 views
0

我知道如何從小部件中打開活動。它將全屏打開。在小部件中打開活動

是否可以在小部件中打開一個?

我的活動是應用程序的一部分,它有一個很大的代碼。該活動打開相機並運行一些算法。我可以擁有一個4x4小部件,並使用我的項目算法在小部件內部運行活動? (基本上是活動的快捷方式,但在小部件內部播放)。

@Override 
public void onUpdate(Context context, AppWidgetManager appWidgetManager, 
     int[] appWidgetIds) { 

    final int N = appWidgetIds.length; 

    for (int i = 0; i < N; i++) { 
     int appWidgetId = appWidgetIds[i]; 

     Intent intent = new Intent(context, ClassToLaunch.class); 
     PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, 
       intent, 0); 

     RemoteViews views = new RemoteViews(context.getPackageName(), 
       R.layout.widget_layout); 
     views.setOnClickPendingIntent(R.id.widget_id, pendingIntent); 

     appWidgetManager.updateAppWidget(appWidgetId, views); 
    } 
+0

我相信這是不可能的 – Martinsos

回答

0

您無法做到這一點,但您可以充分利用您的佈局和更新間隔,因爲小部件具有自己的生命週期。

0

請勿使用活動並使用Fragment。它可以完成活動所做的一切(如果可以調用父活動的方法,如果需要的話),也可以植入屏幕的專用部分。

+0

我正在爲一個已經完成的大應用程序編寫一個小部件。沒有改變應用代碼的方式嗎? – user1918446

相關問題