1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Switching Activities

Dieses Thema im Forum "Java Mobile, Android, J2ME, Blackberry" wurde erstellt von julia123, 13. Februar 2015.

  1. julia123

    julia123 Erfahrenes Mitglied

    Ich hab das eigentlich schon 100 mal gemacht und dass ist echt was für noobs... Aber ich find meinfehler nicht. Ich hab zwei layouts, in denen nix besonders ist. In der Main ist einfach nur ein Button und in der zweiten nur ein Text. Ok ich hab 2 Aktivity Klassen:

    Code (Text):
    1. import android.app.Activity;
    2. import android.content.Intent;
    3.  
    4. import android.os.Bundle;
    5. import android.view.Menu;
    6. import android.view.MenuItem;
    7. import android.view.View;
    8. import android.widget.Button;
    9. import android.widget.Toast;
    10.  
    11. public class MainActivity extends Activity {
    12.  
    13.     @Override
    14.     protected void onCreate(Bundle savedInstanceState) {
    15.         super.onCreate(savedInstanceState);
    16.         setContentView(R.layout.activity_main);
    17.         btnM();
    18.     }
    19.  
    20.     @Override
    21.     public boolean onCreateOptionsMenu(Menu menu) {
    22.         // Inflate the menu; this adds items to the action bar if it is present.
    23.         getMenuInflater().inflate(R.menu.main, menu);
    24.         return true;
    25.     }
    26.  
    27.     @Override
    28.     public boolean onOptionsItemSelected(MenuItem item) {
    29.         // Handle action bar item clicks here. The action bar will
    30.         // automatically handle clicks on the Home/Up button, so long
    31.         // as you specify a parent activity in AndroidManifest.xml.
    32.         int id = item.getItemId();
    33.         if (id == R.id.action_settings) {
    34.             return true;
    35.         }
    36.         return super.onOptionsItemSelected(item);
    37.     }
    38.  
    39.     // Klick rein setzten
    40.     public void btnM() {
    41.         Button btn = (Button) findViewById(R.id.Mainbtn);
    42.         btn.setOnClickListener(new View.OnClickListener() {
    43.  
    44.             @Override
    45.             public void onClick(View v) {
    46.                 Toast.makeText(MainActivity.this, "asdasd", Toast.LENGTH_LONG)
    47.                         .show();
    48.                 startActivity(new Intent(MainActivity.this, Secont.class));// hier hab ich ein problem
    49.  
    50.             }
    51.         });
    52.  
    53.     }
    54.  
    55. }
    Code (Text):
    1. import android.app.Activity;
    2. import android.os.Bundle;
    3. import android.view.Menu;
    4.  
    5. public class Secont extends Activity {
    6.  
    7.    
    8.     @Override
    9.     protected void onCreate(Bundle savedInstanceState) {
    10.         super.onCreate(savedInstanceState);
    11.         setContentView(R.layout.secont_layout);
    12.  
    13.     }
    14.  
    15.     @Override
    16.     public boolean onCreateOptionsMenu(Menu menu) {
    17.         // Inflate the menu; this adds items to the action bar if it is present.
    18.         getMenuInflater().inflate(R.menu.main, menu);
    19.         return true;
    20.     }
    21.    
    22.     // public boolean onKeyDown(int keycode, KeyEvent event) {
    23.     // if (keycode == KeyEvent.KEYCODE_BACK) { // zurück taste
    24.     //
    25.     // setContentView(R.layout.activity_main);
    26.     //
    27.     // }
    28.     // return super.onKeyDown(keycode, event);
    29.     //
    30.     // }
    31.  
    32. }
    Was ich möchte ist einfach nur in dem ich den Button klicke das das zweite Activity gestartet wird und ich das nexte Layout bekomme. Ich hab eine Runtime exeption bekommen :
    Code (Java):
    1. 02-13 00:48:42.100: D/OpenGLRenderer(1320): Enabling debug mode 0
    2. 02-13 00:48:42.220: V/RenderScript(1320): 0x580227c0 Launching thread(s), CPUs 3
    3. 02-13 00:48:43.245: D/AndroidRuntime(1320): Shutting down VM
    4. 02-13 00:48:43.245: W/dalvikvm(1320): threadid=1: thread exiting with uncaught exception (group=0x41cd3700)
    5. 02-13 00:48:43.260: E/AndroidRuntime(1320): FATAL EXCEPTION: main
    6. 02-13 00:48:43.260: E/AndroidRuntime(1320): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.meddokutools/com.example.meddokutools.Norton}; have you declared this activity in your AndroidManifest.xml?
    7. 02-13 00:48:43.260: E/AndroidRuntime(1320):     at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1645)
    8. 02-13 00:48:43.260: E/AndroidRuntime(1320):     at android.app.Instrumentation.execStartActivity(Instrumentation.java:1441)
    9. 02-13 00:48:43.260: E/AndroidRuntime(1320):     at android.app.Activity.startActivityForResult(Activity.java:3464)


    Mein zweites Problem ist etwas Theroetischer. Wie can ich z.B.: zwei Activitys vergleichen wie die oben?
    Wieso ich das brauch ist einfach um zwischen Activities zu wechseln, also um genau zu sein um die Backkey richtig zu konfiguieren. Hat jemand ein Tipp für mich wie man es elegatnter lösen könnte?

    Was ich auch noch gemacht habe ist das ich einfach in die xml einfach die methode button onclick definiert habe, also koplett anders wie oben. Problem ist aber das ich dann einfach nur zwischen Layout zwitche und ich nicht das Programm finishen() kann.

    Ich glaub ich stell mich grade sehr dumm...
     
  2. julia123

    julia123 Erfahrenes Mitglied

    ok, sorry für die dumme Frage ich bin selber drauf gekommen. Ich hab vergessen eine activity in meine main.xml hinzu zufühgen.
    Trotzdem steht immer noch die Frage wie kann ich Activities vergleichen?