2016-04-27 15 views
0

Ich möchte zurück Pfeil in meiner Aktivität hinzufügen, und überschreiben zurück gedrückt, nur um "Zurück" -Funktion, Linie Schaltfläche auf meinem Gerät zu tun.Kann ich dies tun, ohne Umsetzung der übergeordneten activityA zu meiner Aktivität B. versucht zu verwendenHinzufügen zurück Schaltfläche und überschreiben onBackPressed

getActionBar().setDisplayHomeAsUpEnabled(true); 

aber android hat mir gesagt, dass dieser Code NPE produzieren kann, und wenn ich versuche Thema zu setzen Theme.AppCompat android Studio mir Fehler geben, dass kein Vorsatz Symbol. meine Aktivität Code:

public class Activity_videoplayer extends ActionBarActivity { 
    MyVideoView myVideoView; 
    VideoView videoView; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_ctivity_videoplayer); 
     Intent intent = getIntent(); 
     String video_url = intent.getExtras().getString("video_url"); 
     videoView = (VideoView) findViewById(R.id.video_view); 
     MediaController mediaController = new MediaController(this); 
     mediaController.setAnchorView(videoView); 
     videoView.setMediaController(mediaController); 
     videoView.setVideoURI(Uri.parse(video_url)); 
     videoView.requestFocus(); 
     videoView.start(); 

    } 
    public void onBackPressed(){ 
     super.onBackPressed(); 

    } 
} 
+0

u kann Ihre Aktivität Code posten? – Raghavendra

+0

Code meiner Aktivität hinzugefügt :) –

+0

Wenn dies Ihre neue Anwendung ist und wenn es gerade gestartet wird, ändern Sie ActionBarActivity in AppcompatActivity (Sie müssen Abhängigkeiten in Gradle hinzufügen). Ansonsten mach weiter mit was du hast und probiere @saurabh gupta antwort. – Raghavendra

Antwort

0

sicherstellen, dass Ihre Aktivität oder ein Fragment setzen in manifest

assert getSupportActionBar() != null; 
getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

und Setzen Sie diesen Code in Ihre Manifestdatei für Ihr Fragment oder Aktivität

Ihr Zurück Pfeil funktioniert nur, wenn Sie übergeordnete Aktivität dafür festlegen. und es besteht keine Notwendigkeit für onBackPressed Ereignis

und Ihre zweite Antwort: -

Sie actionBarActivity erweitern, die Ihre Ziel sdk Version 21 ist gemeint, wenn Sie AppCompat Thema verwenden möchten, dann müssen Sie AppCompatActivity erweitern, und dafür sollte deine sdk-Zielversion 22 oder 23 sein. Wenn dein plattform plugin und sdktool vollständig aktualisiert sind, musst du nichts selbst einstellen, es wird automatisch alles einstellen. Aktualisieren Sie einfach Ihr SDK- und Plattform-Plugin. Sie können überprüfen, mein

: updated plugin and sdk version

und seine neuesten bisher

+0

können Sie auch meine Antwort hier sehen .. http://stackoverflow.com/questions/36664266/problems-with-fragment-onbackpress/36665100#36665100 –

0

Versuchen

 mToolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(mToolbar); 
     getSupportActionBar().setDisplayShowHomeEnabled(true); 
     getSupportActionBar().setDefaultDisplayHomeAsUpEnabled(true); 
     getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

es ...

helfen Mai
0

Verwendung App Widget-Symbolleiste in XML und den folgenden Code in Ihre Java-Datei kopieren.

Toolbar toolbar=(Toolbar)findviewbyId(R.id.toolbar); 

if(toolbar!=null) { 

setSupportActionBar(toolbar); 

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 

} 

// und Call-Methode:

@Override 

public boolean onOptionsItemSelected(MenuItem item) 
{ 
onBackPressed(); 
return true; 
} 
+0

Entschuldigung zu sagen, aber Ihr Code nicht genug zu arbeiten –

Verwandte Themen