Beiträge von Psychosadistic

    Wenn du 13 eigenständige Mediaplayer hast, d.h. die Objekte explizit 13 Mal erstellst, dann hat der u.U. Probleme damit - ich weiß es aber nicht.
    Bezüglich der Soundpools bzw. der Verwendung dessen kann ich dir herzlich wenig sagen - also gar nichts, hehe.


    Ich würde einfach EINEN Mediaplayer erstellen und sonst nur die Variable "erneuern".

    Java
    mediaPlayer = MediaPlayer.create(this, R.raw.DEIN_SOUND);


    Zitat

    Ja, ich habe mir den Beitrag schon durchgelesen


    Da fällt mir auf, das warst ja auch du da in dem anderen Thread. xD

    Nun ja. Eine Lösung wäre, dass du dir diese Dokumentation/Musik herunterlädst und lokal auf deinem Handy hast.


    Im Endeffekt brauchst du eine App, die so etwas zulässt; explizite Einstellungen diesbezüglich gibt es meines Erachtens nach nicht.


    Sollte dein Handy gerootet sein: http://forum.xda-developers.com/showthread.php?t=1529715
    Nach einer kurzen Suche stieß ich von einem Golem-Beitrag zu diesem Eintrag; vielleicht hilft dir das weiter.


    Viel Glück. :)

    Wie sieht's damit aus?
    http://stackoverflow.com/quest…o-be-at-the-bottom-in-ics


    Auch interessant ...
    http://forums.xamarin.com/disc…not-showing-in-the-bottom


    Falls älter als API 14:
    http://stackoverflow.com/quest…erbread-when-using-appcom


    http://stackoverflow.com/quest…-splitactionbarwhennarrow


    Und das hier ist ja von Google:
    http://developer.android.com/g…i/actionbar.html#SplitBar


    Von der Developer-Seite:

    Zitat

    Add uiOptions="splitActionBarWhenNarrow" to each <activity> element or to the <application> element. This attribute is understood only by API level 14 and higher (it is ignored by older versions).

    Hier kannst du die notwendigen Dateien herunterladen, einfach per Import als Projekt hinzufügen - als RAR-Archiv gepackt mit dem Passwort: ez6nxhab
    https://drive.google.com/file/…JMzVGSk0/view?usp=sharing


    Hier erfolgt nur eine kleine Erklärung! :)


    So. Ich habe mir das fix aus deiner Vorlage selbst zusammengebastelt - es funktionert bei mir einwandfrei.



    Anstelle der ganzen if-Abfragen, solltest du ruhig switch-case nutzen. Dies funktioniert so:



    Je nachdem, was die Funktion verlangt, in der switch-case genutzt wird, wird anstelle des "breaks" ein "return WERT" genutzt. In diesem Fall gibt es keinen Rückgabewert (void).
    Das "default" beschreibt, was passieren soll, wenn keiner der o.g. Fälle zutrifft - hier in diesem Fall kannst du es einfach hinschreiben oder weglassen - bei größeren Projekten sollte man bei der Nutzung dessen einen Ausgangspunkt setzen, der allgemein gehalten sein sollte. :)

    Momentan spielt er nur die Musik nach Start der App bzw. nach Aufruf der Activity ab. Um einen neuen Song zu starten, reicht es auch aus Folgendes aufzurufen:


    Java
    mediaPlayer = MediaPlayer.create(this, R.raw.theme_2);
    // neuen Song gewählt
    mediaPlayer.setLooping(true);                                                   
    // dein Loop :P
    mediaPlayer.start();                                                                    
    // Start des neuen Songs - der davor wird automatisch abgebrochen


    Etwas Einfacheres (Logischeres vielleicht auch) habe ich nicht finden können. Oder du nutzt weiterhin dein setNextMediaPlayer:

    Java
    mediaPlayer.setNextMediaPlayer(MediaPlayer.create(this, R.raw.theme_2)); //oder du kreierst einen neuen MediaPlayer, wie du es bei dir gemacht hast


    Du solltest Bezeichnungen in der "strings.xml" festlegen, so z.B. auch die Bezeichnung des Buttons.


    strings.xml

    HTML
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
    
    
        <string name="app_name">MediaPlayer</string>
        <string name="next_pic">Nächstes Bild</string>
        <string name="action_settings">Settings</string>
    
    
    </resources>


    activity_main.xml


    ___________________________________________


    Im Endeffekt glaube ich, dass es an deiner Initialisierung zweier MediaPlayer liegt - dazu kann ich aber nicht viel sagen :/

    Code
    java.lang.RuntimeException: Unable to start activity ComponentInfo{
    com.jukusoft.chatter/com.jukusoft.chatter.MainActivity}:
    java.lang.NullPointerException: Attempt to invoke virtual method
    'java.lang.String android.content.Intent.resolveTypeIfNeeded(android.content.ContentResolver)'
    on a null object reference


    Er spricht hier die MainActivity an, die ihm Probleme bereitet.


    Java
    this.serviceConnectionManager = new ServiceConnectionManager();
        	if (!this.serviceConnectionManager.isServiceAvailable()) {
            	//start service
            	this.serviceConnectionManager.startService(this.getBaseContext());
        	}


    Könnte ja an dem liegen, was du hier reinhaust. Zeig mal die ganze MainActivity bzw. kommentiere mal ne Zeile aus, teste es neu, kommentiere wieder etwas aus, teste wieder usw.

    Gern geschehen! Schön, dass es jetzt klappt.


    Ich weiß es nicht, schau dir alles mal ganz genau an, vielleicht habe ich ja doch etwas 'aus Versehen' entfernt ...
    Ich nahm im Übrigen die Dateien aus dem Post hier:


    Fragment in Listview einfügen um "Posts mit Grafik" anzeigen zu können


    Da habe ich einfach Einiges entfernt, was ich nicht hatte - z.B. DummyContent, die "drawables" usw.
    Einfach mal prüfen.

    https://drive.google.com/file/…kRUdlcVU/view?usp=sharing


    Schau mal, ob du das herunterladen kannst.
    Passwort lautet: ez6nxhab


    Solltest du es herunterladen können und entpacken, ebenfalls importieren - dann müsstest du nur noch einige Anpassungen machen, ich hatte ja deine "drawables" nicht. Du müsstest die Hintergründe der RelativeLayouts wieder ersetzen und die Bilder, die du aufrufst, bei den 3 Items in der Liste.


    Also das hier:


    Java
    mItems.add(new ListViewItem(resources.getDrawable(R.drawable.aim),"aim", "aim desc"));
        	mItems.add(new ListViewItem(resources.getDrawable(R.drawable.bebo), "bebo", "bebo desc"));
        	mItems.add(new ListViewItem(resources.getDrawable(R.drawable.youtube), "youtube", "youtube desc"));


    Und das hier:



    Falls es dann wieder nicht funktioniert, liegt es an den "drawables", haha. :D

    Du SOLLST DemoFragment... benutzen - wenn er das automatisch so hat, ist das doch gut.
    Ja, mir ging's nur darum, dass du die Funktionen alle da drin zu stehen hast.


    Ja, das war ja auch nur ein Beispiel - habe aber das hier bei dir gesehen:


    Java
    switch(position){
               	case 0:
                   	return ScoutLogFragment.newInstance("a","b");
               	case 1:
                   	return BlankFragment.newInstance("a","b");
               	case 2:
                   	return PlaceholderFragment.newInstance(position + 1);
               	default:
                   	return PlaceholderFragment.newInstance(position + 1);
           	}


    Dort wird ScoutLogFragment genutzt - zusätzlich solltest du schauen, ob irgendwo noch etwas rot angestrichen ist, das dann entfernen - ansonsten sollte es doch klappen. :o

    Erst einmal solltest du alle ausgegrauten "import"-Aktionen entfernen (diese bringen keine Lösung, sind aber unnötig :P).


    Lösung


    Bei der MainActivity setzt du bei "implements" den hier "DemoFragment.OnScoutLogInteractionListener" anstelle des allgemeinen OnScoutLogInteractionListener. Danach per ALT+Eingabe die notwendigen Funktionen hinzufügen lassen.


    Ich hoffe, deine "listViewItem.xml" heißt aber "listview_item.xml". :D


    Weiteres


    Zusätzlich solltest du dein "DemoFragment" zurückgeben lassen (also eine neue Instanz dessen) - als Beispiel in "case 2":