Dans mon application, j'ai deux activités. Au moment du lancement, je montre une zone de texte d'édition et un bouton dans la première activité. Lorsque le bouton est cliqué, il passe à l'activité suivante.Comment fermer une activité au lancement dans Android
Avant cela, lorsque la zone d'édition est saisie, elle est stockée dans une base de données. Lorsque l'activité démarre, elle vérifie la base de données. Si la base de données est vide, elle affiche la première activité si la base de données est remplie. Je souhaite afficher directement la deuxième activité. Mais ça ne se passe pas dans mon code. S'il vous plaît, quelqu'un m'aider? Je veux savoir où je me trompe ...
super.onCreate(savedInstanceState);
db = openOrCreateDatabase("TestData.db", SQLiteDatabase.CREATE_IF_NECESSARY, null);
db.setVersion(1);
db.setLocale(Locale.getDefault());
db.setLockingEnabled(true);
final String CREATE_TABLE_COUNTRIES ="CREATE TABLE IF NOT EXISTS tbl_countries (id TEXT);";
db.execSQL(CREATE_TABLE_COUNTRIES);
ContentValues values = new ContentValues();
values.put("id", textvalue);
Cursor cx = db.rawQuery("select id from tbl_countries" , null);
counter=0;
if (cx != null)
{
if (cx.moveToFirst())
{
do
{
counter=counter+1;
}
while (cx.moveToNext());
}
}
db.close();
if(counter == 0)
{
setContentView(R.layout.main);
et = (EditText)findViewById(R.id.editText1);
textvalue = et.getText().toString();
b = (Button)findViewById(R.id.button1);
b.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
Intent myIntent = new Intent(getBaseContext(), SeconDClass.class);
startActivityForResult(myIntent, 0);
finish();
}
});
}
else if(counter>=1)
{
Intent myIntent = new Intent(getBaseContext(), SeconDClass.class);
startActivityForResult(myIntent, 0);
finish();
}
Vous n'avez pas besoin de *, mais vous voudrez peut-être. Cela dépend de ce que vous voulez faire lorsque l'utilisateur appuie sur le bouton de retour une fois qu'ils sont dans la deuxième activité. Si vous n'appelez pas finish() dans le premier, il reviendra à celui-là. Si vous appelez finish() alors il retournera à tout ce qui se passait avant d'entrer dans cette application. – FoamyGuy
Aussi finish() appellera onDestroy() ... –