SORU
3 NİSAN 2010, CUMARTESİ


nasıl bir uygulama içinde birden çok widget eklemek için?

Sadece benim Android widget bitirdim. Şimdi kullanıcı seçim için bu wiget farklı boyutlarda olması gerekiyor. örneğin bir orta boy ihtiyacım var, küçük ve büyük boy widget. kullanıcı uygulamayı yüklemek ve ana ekran sonra widget seçin, basılı tutun, widget menüsünde onu boyutu ile aynı uygulama ismi ile ancak üç widget görmek istiyorum. şöyle bir şey:

helloSmall helloMedium helloLarge

Ortam hazır ama nasıl aynı uygulama küçük ve büyük yapabilir miyim? üç boyutları aynı veri ve eylemleri sadece boyutu ve arka plan içeren bilmek farklıdır.

Teşekkürler.

CEVAP
3 NİSAN 2010, CUMARTESİ


Bildirimi dosyasında olduğu gibi: her tür alıcı bir açıklama gerekiyor

    <receiver android:name=".MyWidget" android:label="@string/medium_widget_name">
        <intent-filter>
            <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
        </intent-filter>
        <meta-data android:name="android.appwidget.provider"
            android:resource="@xml/medium_widget_provider" />
    </receiver>

    <receiver android:name=".MyWidget" android:label="@string/large_widget_name">
        <intent-filter>
            <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
        </intent-filter>
        <meta-data android:name="android.appwidget.provider"
            android:resource="@xml/large_widget_provider" />
    </receiver>

Bu AppWidgetProvider aynı sınıf birden fazla widget, widget farklı isimler ve farklı boyutları <appwidget-provider> XML ile tanımlanmış kullanılabilir olması için izin verecek.

Şimdi ise <appwidget-provider> XML nedir daha araçlarınızı daha farklılıklar istiyorsanız, farklı tür arasındaki bütün ortak behavoir uygulayan temel widget bir sınıf oluşturmak istiyorum:

public abstract class MyBaseWidget extends AppWidgetProvider

Ve ardından somut uygulamaları her MyBaseWidget uzatabilir. Manifest dosyanızda beton uygulamaları her biri için alıcı bir tanım gibi olurdu o zaman:

    <receiver android:name=".MyMediumWidget" android:label="@string/medium_widget_name">
        <intent-filter>
            <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
        </intent-filter>
        <meta-data android:name="android.appwidget.provider"
            android:resource="@xml/medium_widget_provider" />
    </receiver>

    <receiver android:name=".MyLargeWidget" android:label="@string/large_widget_name">
        <intent-filter>
            <action android:name="android.appwidget.action.APPWIDGET_UPDATE" />
        </intent-filter>
        <meta-data android:name="android.appwidget.provider"
            android:resource="@xml/large_widget_provider" />
    </receiver>

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • cdgotx

    cdgotx

    8 Kasım 2011
  • Make:

    Make:

    23 Mart 2006
  • TomSka

    TomSka

    30 Mayıs 2006