Widget je malá miniaplikace nebo ovládací prvek aplikace Android umístěný na domovské obrazovce. Widgety mohou být velmi užitečné, protože umožňují umístit oblíbené aplikace na domovskou obrazovku, abyste k nim měli rychlý přístup. Pravděpodobně jste se již setkali s některými běžnými widgety, například s hudebním widgetem, widgetem počasí, widgetem hodin atd
Widgety mohou být mnoha typů, například informační widgety, widgety sbírek, ovládací widgety a hybridní widgety. Android nám poskytuje kompletní rámec pro vývoj vlastních widgetů.
Widget – soubor XML
Pro vytvoření widgetu aplikace potřebujete nejprve objekt AppWidgetProviderInfo, který definujete v samostatném souboru XML widgetu. Za tímto účelem klikněte pravým tlačítkem myši na svůj projekt a vytvořte novou složku s názvem xml. Nyní klikněte pravým tlačítkem myši na nově vytvořenou složku a vytvořte nový soubor XML. Typ prostředku souboru XML by měl být nastaven na AppWidgetProvider. V souboru xml definujte některé vlastnosti, které jsou následující –
Widget – Layout file
Nyní musíte definovat rozložení vašeho widgetu ve výchozím souboru XML. Pro vygenerování automatického xml můžete přetáhnout komponenty.
Widget – Java soubor
Po definování rozvržení nyní vytvořte nový JAVA soubor nebo použijte stávající a rozšiřte jej o třídu AppWidgetProvider a přepište její metodu update následujícím způsobem.
V metodě update musíte definovat objekt dvou tříd, kterými jsou PendingIntent a RemoteViews. Její syntaxe je –
Nakonec musíte zavolat metodu update updateAppWidget() třídy AppWidgetManager. Její syntaxe je –
appWidgetManager.updateAppWidget(currentWidgetId,views);
Částečně od metody updateAppWidget jsou v této třídě definovány další metody pro manipulaci s widgety. Jsou následující –
Sr.č | Metoda & Popis |
---|---|
1 |
onDeleted(Context context, int appWidgetIds) Tato metoda je volána, když je instance AppWidgetProvider odstraněna. |
2 |
onDisabled(Context context) Tato funkce je vyvolána, když je poslední instance AppWidgetProvider. odstraněna |
3 |
onEnabled(Context context) Tato funkce je volána, když je vytvořena instance AppWidgetProvider. |
4 |
onReceive(Context context, Intent intent) Používá se k odeslání volání různých metod třídy |
Widget – Manifest soubor
Třídu AppWidgetProvider musíte také deklarovat ve svém manifest souboru následujícím způsobem:
Příklad
Tady je příklad demonstrující použití aplikace Widget. Vytvoří základní aplikaci Widget, která otevře tuto aktuální webovou stránku v prohlížeči.
Chcete-li s tímto příkladem experimentovat, musíte jej spustit na skutečném zařízení, na kterém běží internet.
Kroky | Popis |
---|---|
1 | Pomocí Android studia vytvoříte aplikaci Android pod balíčkem com.example.sairamkrishna.myapplication. |
2 | Upravte soubor src/MainActivity.java a přidejte kód widgetu. |
3 | Upravte soubor res/layout/activity_main, abyste přidali příslušné komponenty XML |
4 | Vytvořte novou složku a soubor xml v adresáři res/xml/mywidget.xml pro přidání příslušných komponent XML |
5 | Upravte soubor AndroidManifest.xml pro přidání potřebných oprávnění |
6 | Spusťte aplikaci a vyberte běžící zařízení Android a nainstalujte na něj aplikaci a ověřte výsledky. |
Následuje obsah upraveného souboru MainActivity.java.
Následuje upravený obsah souboru xml res/layout/activity_main.xml.
Následuje obsah souboru res/xml/mywidget.xml.
Následuje obsah souboru res/values/string.xml.
<resources> <string name="app_name">My Application</string></resources>
Následuje obsah souboru AndroidManifest.xml.
Pokusíme se spustit aplikaci. Předpokládám, že jste připojili své aktuální mobilní zařízení se systémem Android k počítači. Chcete-li aplikaci spustit ze studia Android, otevřete jeden ze souborů aktivit vašeho projektu a klikněte na ikonu Spustit z panelu nástrojů. Před spuštěním aplikace se ve studiu Android zobrazí následující okno pro výběr možnosti, kde chcete aplikaci Android spustit:
Vyberte jako možnost mobilní zařízení a poté zaškrtněte mobilní zařízení, které zobrazí výchozí obrazovku –
Přejděte do sekce widget a přidejte vytvořený widget na plochu nebo domovskou obrazovku. Vypadalo by to nějak takto –
Nyní stačí klepnout na tlačítko widgetu, které se zobrazí, a spustit prohlížeč. Předtím se však ujistěte, že jste připojeni k internetu. Po stisknutí tlačítka , by se objevila následující obrazovka –
Pozn. Pouhou změnou url adresy v souboru java váš widget otevře požadovanou webovou stránku v prohlížeči.
.