2016-07-11 5 views
0

Dies ist mein erstes Mal mit Media Player, ich habe einen Sound-Play, wenn die App startet, aber das Problem, das ich habe ist ein Sound wird wieder abgespielt Wenn das Gerät gedreht wird, obwohl es im Hochformat gesperrt ist, geschieht dies in allen Fragmenten, wenn es gedreht wird, und ich möchte nur, dass der Ton beim Starten der App und nicht erst wieder abgespielt wird! ich habe versucht das Hinzufügen ..Media Player spielt immer noch in allen Aktivitäten, wenn Gerät gedreht wird, obwohl auf Porträt gesperrt

android: configChanges = „Orientierung | Tastatur | keyboardHidden | Bildschirmgröße“

auf das Manifest in mainactivity als von jemandem beraten, aber das funktioniert nicht und scheint mir seltsam!

Hier ist meine Haupttätigkeit Java-Code mit dem Media Player eingerichtet.

public class MainActivity extends AppCompatActivity { 
 

 
    Toolbar toolbar; 
 
    TabLayout tabLayout; 
 
    ViewPager viewPager; 
 
    ViewPagerAdapter viewPagerAdapter; 
 

 
    @Override 
 
    protected void onCreate(Bundle savedInstanceState) { 
 
     super.onCreate(savedInstanceState); 
 
     setContentView(R.layout.activity_main); 
 

 
    toolbar = (Toolbar)findViewById(R.id.toolbar); 
 
     setSupportActionBar(toolbar); 
 

 
     tabLayout = (TabLayout)findViewById(R.id.tablayout); 
 
     viewPager = (ViewPager)findViewById(R.id.viewPager); 
 
     viewPagerAdapter = new ViewPagerAdapter(getSupportFragmentManager()); 
 
     viewPagerAdapter.addFragments(new HomeFragment(),"Welcome"); 
 
     viewPagerAdapter.addFragments(new TopThreeFragment(),"Main Display"); 
 
     viewPagerAdapter.addFragments(new TopPaidFragment(),"Options"); 
 
     viewPagerAdapter.addFragments(new ForthTestFragment(),"news"); 
 
     viewPagerAdapter.addFragments(new About(),"About"); 
 

 
     viewPager.setAdapter(viewPagerAdapter); 
 
     tabLayout.setupWithViewPager(viewPager); 
 

 
     final MediaPlayer mp = MediaPlayer.create(this, R.raw.firsteps); 
 
     mp.start(); 
 

 
    } 
 

 
}

Antwort

1

Ersetzen dieses

android:configChanges="orientation|keyboard|keyboardHidden|screenSize"

zu

android:configChanges="orientation|screenSize" dieses.

Und Make von Doppel-Check fügen Sie dies zu verwandten Aktivitäten.

+0

nur realisiert ich kann dies nicht zu jedem in manifest hinzufügen, weil seine 5 Fragmente, die das Problem verursachen –

+0

Ich habe App erneut getestet und kann bestätigen, dass die 5 Fragmente, obwohl ich sie programmatisch auf Porträt, den Ton aus dem Haupt gesperrt haben Die Aktivität wird weiterhin abgespielt, wenn das Gerät auf den Fragmenten gedreht wird. –

+1

Fügen Sie diese Eigenschaft nur der Aktivität hinzu, die Fragmente erstellt. –