Naar content
Trending apps
  • Inbox by Gmail

  • Maps: Navigatie en OV

  • WhatsApp Messenger

  • Messenger

  • Facebook

Trending games
  • Dr. Mario World

  • Harry Potter: Wizards Unite

  • Breaking Bad: Criminal Elements

  • The Elder Scrolls: Blades

  • Ghostbusters World

Trending smartphones
  • Microsoft Surface Duo

  • OnePlus 7T Pro

  • Nokia 7.2

  • Xiaomi Mi 9T Pro

  • Samsung Galaxy Note 10 Plus

Nieuwste tablets
  • Samsung Galaxy Tab S6

  • Samsung Galaxy Tab A 10.5

  • Samsung Galaxy Tab S4

  • Samsung Galaxy Tab S3 9.7

  • Asus Zenpad 3S 10

fifarunnerr

fifarunnerr

  • Lid sinds 13 juli 2010
  • Berichten 1846
  • Reputatie 10
  • #1
  • 27 september 2011
  • 17:23

Ik heb een vraag over de App Widgets van Android. Ik ben namelijk bezig met een Rooster App voor school, waarin de roosters komen. Het grootste deel is al af, je kan inloggen, groep invoeren, data binnenhalen, swipen om naar vorige/volgende dag te gaan en pijltjes gebruiken om een dag/week verder/terug te gaan.

Dat werkt allemaal, en dat is ook niet mijn probleem. Het probleem zit hem in de App Widgets. Ik heb al de benodigde dingen ingevoerd, de widget staat al op mijn homescreen, maar het probleem zit hem in het vullen van de widget.
Binnen mijn applicatie gebruik ik een TableLayout om die te vullen, maar van Google mag ik dat om een of andere reden niet gebruiken voor een widget. Allemaal geen probleem, dan gebruiken we gewoon RelativeLayouts.

Ook dat werkt, alleen nu zit ik met het probleem hoe ik de data er in moet zetten. De methode wordt keurig aangeroepen, en de RelativeLayouts vullen lukt wel. Maar mijn vraag is hoe ik die RelativeLayouts neerzet.

<?xml version="1.0" encoding="utf-8"?><LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:id="@+id/widgetTableViewLayout"
android:layout_width="294dip"
android:background="#FFFFFF"
android:layout_height="fill_parent">
<include layout="@layout/widget_row" android:layout_width="fill_parent" android:layout_height="wrap_content"/>
<include layout="@layout/widget_row" android:layout_width="fill_parent" android:layout_height="wrap_content"/>

</LinearLayout>

Dat is mijn layout voor de widget, met 2 test-waardes erin. Mijn vraag is: Hoe kan ik deze code netjes maken, zodat ik een variabel aantal lessen in kan voeren?
Ik wil dus eigenlijk weten hoe ik aan deze layout nieuwe Views toe voeg, om hem zo te vullen.

Voor de applicatie zelf doe ik (zonder alle overbodige code)
for(int i = 0; i < number; i++) {
final TableLayout table = new TableLayout(activity);
table.addView(row);
}
layout.addView(table);

Maar hoe krijg ik dit met die RemoteViews in de widget?

Bewerkt (27 september 2011 17:23)
bassie1995

bassie1995

  • Lid sinds 04 januari 2011
  • Berichten 2028
  • Reputatie 0
  • #2
  • 27 september 2011
  • 18:00

Ik ga even brutaal zijn en je niet kunnen helpen, maar toch iets posten.

Heb je een tutorial ofzo om dit te maken? Vind het namelijk een geniaal idee, en zou het voor mijn school ook willen doen.
Maar hoe doe je dat met alle gebruikers van een BlackBerry/iPhone?

EDIT: Kijk even hier: Android Developer Guide

Bewerkt (27 september 2011 18:00)
fifarunnerr

fifarunnerr

  • Lid sinds 13 juli 2010
  • Berichten 1846
  • Reputatie 10
  • #3
  • 27 september 2011
  • 18:25

Die guide komt zo te zien rechtstreeks van developer.android.com, die had ik dus al gelezen. Toch bedankt

En deze App komt alleen voor Android, simpelweg omdat ik al een Developer account heb voor Android, ik niets heb met andere platformen. Bovendien doe ik dit voor mijn plezier, en niet uit opdracht van school

Een tutorial wordt vrij lastig, een groot deel weet ik zelf hoe ik moet maken, wat nieuwe dingen(zoals widgets) wist ik niet en zoek ik dus op/vraag hulp. Vorig jaar was er voor mijn school al een App, maar doordat ze zijn overgestapt op een nieuw systeem werkte die niet meer. Dus toen ben ik er een gaan maken, en dat nieuwe systeem heeft een API, waardoor ik alle lesuren vrij makkelijk op kan halen en uit kan lezen. Die gegevens mik ik in een database, die geef ik weer met TableLayout in combinatie met ViewPager en wat knoppen. Met veel van die dingen had ik nog nooit echt gewerkt, en dat maakt het leuk.
Maar goed, één tutorial wordt dus gigantisch lang en lastig.

* Die dikgedrukte woorden zijn de belangrijkste dingen die ik heb gebruikt, als je met die 4 dingen kan werken en de basis van Android Development kent dan lukt het wel. Op de widget na dus

Bewerkt (27 september 2011 18:25)
bassie1995

bassie1995

  • Lid sinds 04 januari 2011
  • Berichten 2028
  • Reputatie 0
  • #4
  • 27 september 2011
  • 18:42

fifarunnerr;221424
Die guide komt zo te zien rechtstreeks van developer.android.com, die had ik dus al gelezen. Toch bedankt

En deze App komt alleen voor Android, simpelweg omdat ik al een Developer account heb voor Android, ik niets heb met andere platformen. Bovendien doe ik dit voor mijn plezier, en niet uit opdracht van school

Een tutorial wordt vrij lastig, een groot deel weet ik zelf hoe ik moet maken, wat nieuwe dingen(zoals widgets) wist ik niet en zoek ik dus op/vraag hulp. Vorig jaar was er voor mijn school al een App, maar doordat ze zijn overgestapt op een nieuw systeem werkte die niet meer. Dus toen ben ik er een gaan maken, en dat nieuwe systeem heeft een API, waardoor ik alle lesuren vrij makkelijk op kan halen en uit kan lezen. Die gegevens mik ik in een database, die geef ik weer met TableLayout in combinatie met ViewPager en wat knoppen. Met veel van die dingen had ik nog nooit echt gewerkt, en dat maakt het leuk.
Maar goed, één tutorial wordt dus gigantisch lang en lastig.

* Die dikgedrukte woorden zijn de belangrijkste dingen die ik heb gebruikt, als je met die 4 dingen kan werken en de basis van Android Development kent dan lukt het wel. Op de widget na dus

Aha, zal er even naar kijken als de DevTuts eraan toe komen (enige keren dat ik er echt aan kan werken).

Bewerkt (27 september 2011 18:42)
RunaR

RunaR

  • Lid sinds 09 augustus 2010
  • Berichten 214
  • Reputatie 0
  • #5
  • 27 september 2011
  • 20:05

Je zet alle veranderingen voor je widgets (handig die benaming, je textviews, imageviews ed.) klaar in je RemoteView update. Dan kan je de RemoteView naar de AppWidget (dat ding op je homescreen) pushen met:

AppWidgetManager appWidgetManager = AppWidgetManager.getInstance(this);
appWidgetManager.updateAppWidget(appWidgetId, remoteView);

Bewerkt (27 september 2011 20:05)

Reageer

Om te reageren, dien je te zijn ingelogd. Druk op de onderstaande knop om in te loggen of maak een nieuwe account aan.

Inloggen Registreren