Naar content
Trending apps
  • Inbox by Gmail

  • Maps: Navigatie en OV

  • WhatsApp Messenger

  • Messenger

  • Facebook

Trending games
  • Minecraft Earth

  • Dr. Mario World

  • Harry Potter: Wizards Unite

  • Breaking Bad: Criminal Elements

  • The Elder Scrolls: Blades

Trending smartphones
  • OPPO Find X2 Pro

  • Nokia 8.3

  • Xiaomi Mi 10 Pro

  • Huawei P40 Pro

  • Realme X2 Pro

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

bartfukkink

bartfukkink

  • Lid sinds 11 februari 2011
  • Berichten 358
  • Reputatie 0
  • #1
  • 25 maart 2011
  • 08:53

Aangezien mijn laptopje gisteravond de geest heeft gegeven post ik de code die ik tot nu toe verzameld heb voor het ontwikkelen van een widget waarmee je het media volume kan regelen maar even hier… Dan kunnen andere mensen er mee bezig om er een complete widget van te maken.

Deze code heb ik zelf ontwikkeld van verschillende voorbeelden op het internet. Er zitten totaal geen rechten aan verbonden, gebruik het naar eigen wil en op eigen risico. (een vermelding is natuurlijk wel altijd welkom ^^)


VolumeWidget.java:

package nl.andurin.AndroidVolumeWidget;

import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.ComponentName;
import android.content.Context;
import android.media.AudioManager;
import android.util.Log;
import android.widget.RemoteViews;

public class VolumeWidget extends AppWidgetProvider {

//Use the AudioManager to get the volume stream
AudioManager au;

@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds ) {
Log.d("INFO", "onUpdate called");

//Use these to handle the actions
RemoteViews remoteViews;
ComponentName volumeWidget;

try {

//Set UI access
remoteViews = new RemoteViews( context.getPackageName(), R.layout.main);
volumeWidget = new ComponentName(context, VolumeWidget.class);

//Get the audio stream
au = (AudioManager)context.getSystemService(context.AUDIO_SERVICE);

//Get the max and current volume
int max = au.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
int cur = au.getStreamVolume(AudioManager.STREAM_MUSIC);

//Set the progressbar to the current volume
remoteViews.setProgressBar(R.id.progBar, max, cur, false);

//Call the widget to update? Not sure what this does...
appWidgetManager.updateAppWidget( volumeWidget , remoteViews );
}
catch(Exception e) {
Log.e("INFO", "Something, somewhere went terribly wrong : " + e.getMessage());
}
}
}
main.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/LinearLayout01"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:orientation="vertical">

<ProgressBar
android:id="@+id/progBar"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
style="?android:attr/progressBarStyleHorizontal"
/>

<LinearLayout
android:id="@+id/lay_btn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>

<Button
android:id="@+id/btn_up"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="+"
/>

<Button
android:id="@+id/btn_down"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="-"
/>

</LinearLayout>
</LinearLayout>
Hoop dat mensen er iets aan hebbenEn ik weet zeker dat er ook genoeg mensen zijn die hiervan een widget kunnen makenZodra ik mijn ontwikkel machine weer aan de praat heb ga ik er ook weer mee verder… Maar gezien de hoeveelheid tijd ik heb kan dat wel is even duren ><

Owja, de knoppen die er staan doen nu nog niets. Als je hiermee bezig gaat zal je zelf de knoppen moeten binden en die vervolgens het volume +1 en -1 laten doen ^^

Bewerkt (25 maart 2011 08:53)

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