Android Wechseln zwischen Aktivitäten
was ich versuche zu tun, ist ein Startbildschirm, der bleibt für 5 Sekunden und geht zu activity1.Wenn ich auf eine Schaltfläche in activity1 führt mich zu der activity2.Ich habe versucht, viele Male die auf-Taste, aber keine Umschaltung passiert.
homescreen (5 Sekunden)=Main_Activity
Activity1=selectpets.java
Activity2=fishtank.java
onclick-listener scheint, das problem ich weiß nicht was falsch mit ihm
Main Activity Code
package com.set.petshome;
import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class MainActivity extends Activity {
Button fButton;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Delay Code after 5 seconds
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
setContentView(R.layout.selectscreen); //where <next> is you target activity :)
}
}, 5000);
}
//Delay End
@Override
public boolean onCreateOptionsMenu(Menu menu) {
//Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
Nun die Selectpets Code
package com.set.petshome;
import android.app.Activity;
import android.content.*;
import android.os.Bundle;
import android.view.*;
import android.widget.Button;
public class SelectPetsScreen extends Activity {
Button fButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.selectscreen);
//Button Fishtank Listener Start
fButton = (Button) findViewById(R.id.button1);
//Listening to button event
fButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//Starting a new Intent
Intent nextScreen = new Intent(getApplicationContext(), fishtank.class);
startActivity(nextScreen);
}
});
//Button Fishtank Listener End
}
}
Fishtank-Klasse code
package com.set.petshome;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
public class fishtank extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.ftank);
}
}
übrigens keine Fehler in der Anwendung einfach keine Umschaltung nach einem Klick
vielen Dank
Ändern Sie die
Hast du add zweite Aktivität Manifest.xml? Wenn ja, versuchen Sie, fügen Sie zu SelectPetsScreen: "android:launchMode="singleTask"`
setContentView()
. Dies wird nicht starten Sie Ihren SelectPetsScreen
Aktivität und daher werden Sie nie auf die Schaltfläche Klick-listener zugewiesen. Da Sie sich noch in der MainActivity
🙂Hast du add zweite Aktivität Manifest.xml? Wenn ja, versuchen Sie, fügen Sie zu SelectPetsScreen: "android:launchMode="singleTask"`
InformationsquelleAutor user1928775 | 2013-08-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier nicht ständig Umschalten zum nächsten
Activity
, ändern Sie einfach denlayout
des aktuellenActivity
statt
setContentView()
müssen Sie eineIntent
Da Sie eigentlich nicht auf die nächste
Activity
(java-Datei) IhreonClick()
ist nicht festgelegt.Bearbeiten
Dies ist, was Sie tun
Dies ist, was Sie tun sollten. Beachten Sie den Unterschied in der
run()
FunktionNein, in Ihrem
MainActivity
Sie nicht, dies zu tun. Schau meine Antwort nochmal. Sie sind nicht mit einemIntent
es bis zum start des nächstenActivity
das ist, wo IhreonClickListener
eingestellt ist. Sie sind NUR für die änderung derlayout
und geht nicht zu denActivity
.Jetzt bekomme ich es aber nach der änderung des code System UI beendet(stürzt ab), auf MainActivity
Ich kann Euch nicht sagen warum, ohne zu wissen, was der Fehler ist. Was ist denn in der logcat für
Fatal Exception
und was ist die erste Zeile, die auf Ihr Paket nach?InformationsquelleAutor codeMagic
Können Sie
finish()
wenn Sie möchten, verwenden firts Aktivität nur einmal.Sicher sein, dass Sie 2. Aktivität definiert, die in Ihrer Manifest.xml:
Hast du add zweite Aktivität Manifest.xml?
versuchen Sie, fügen Sie zu SelectPetsScreen: manifest.xml: ` android:launchMode="singleTask"`
Dank Maxim Shoustin und jeder arbeitete nach hinzufügen SelectPetsScreen in manifest.xml
InformationsquelleAutor Maxim Shoustin
Vermeiden.
Google gibt Ihnen die Absicht Mechanismus für die Umschaltung Aktivitäten
also
statt
Den verbleibenden Teil der code muss funktionieren.
InformationsquelleAutor
War ich in der Lage, es zu lösen mit der Hilfe von Maxim Shoustin und jeder durch:
hinzufügen zweite Aktivität Manifest.xml die SelectPetsScreen
Danke, dass Sie so viel
InformationsquelleAutor user1928775