Ich baue ein Android-Spiel, das speichert verwendet. Das bedeutet, dass ein Nutzer bis zu 5 einzigartige Spielstände im Spiel öffnen kann. Um einen neuen Speichervorgang zu erstellen, verwende ich SharedPreferences, damit der Benutzer einen Speichernamen eingeben und in meinem SharedPreferences-Ordner speichern kann. Der Benutzer wird dann zum Hauptspiel Activity with Intent Extra umgeleitet, das der Spielaktivität mitteilt, welche Speicherung zu öffnen ist.Android App Absturz (freigegebene Einstellungen)
In dem Design klingt alles ok, aber aus irgendeinem Grund hält meine Anwendung nur Kraft schließen. Ich habe keine Code-Fehler in Eclipse, und selbst LogCat zeigt keinen Fehler. Ich weiß nicht, was los ist ...
Hier ist mein Code:
package ent.com;
import android.app.AlertDialog;
import android.app.ListActivity;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ListView;
public class Saves extends ListActivity{
String saves[] = { "Empty save", "Empty save", "Empty save", "Empty save", "Empty save"};
public static String filename = "SharedData";
SharedPreferences someData;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
someData = getSharedPreferences(filename, 0);
String save1 = someData.getString("0", "Empty save");
String save2 = someData.getString("1", "Empty save");
String save3 = someData.getString("2", "Empty save");
String save4 = someData.getString("3", "Empty save");
String save5 = someData.getString("4", "Empty save");
saves[0] = save1;
saves[1] = save2;
saves[2] = save3;
saves[3] = save4;
saves[4] = save5;
setListAdapter(new ArrayAdapter<String>(Saves.this, android.R.layout.simple_list_item_1, saves));
}
@Override
protected void onListItemClick(ListView l, View v,int position, long id) {
final String clicked = saves[position];
final String pos = getString(position);
super.onListItemClick(l, v, position, id);
if(clicked=="Empty save"){
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle("Input name");
alert.setMessage("Give your team a name:");
// Set an EditText view to get user input
final EditText input = new EditText(this);
alert.setView(input);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
String value = input.getText().toString();
SharedPreferences.Editor editor = someData.edit();
editor.putString(pos, value);
editor.commit();
try{
Class Joe = Class.forName("ent.com.TestActivity");
Intent Joey = new Intent(Saves.this, Joe);
Joey.putExtra("save", clicked);
startActivity(Joey);
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
});
alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
Intent back = new Intent("ent.com.MENU");
startActivity(back);
}
});
alert.show();
}else{
try{
Class ourClass = Class.forName("ent.com.TestActivity");
Intent ourIntent = new Intent(Saves.this, ourClass);
ourIntent.putExtra("save", clicked);
startActivity(ourIntent);
}catch(ClassNotFoundException e){
e.printStackTrace();
}
}
}
}
Vielen Dank für jede Hilfe.
beim Schließen der Anwendung? Wenn Sie einen gespeicherten Status aus der Liste auswählen möchten? – 5hssba
Post App Log wenn App schließt –
dann bin ich 100% sicher, dass Sie irgendein Problem mit der Startaktivität auf Schaltfläche clcick haben –