1. ensacom, 15.05.2009 #1
    ensacom

    ensacom Threadstarter Android-Hilfe.de Mitglied

    Hallo, ich möchte jetzt mit der Android-Programmierung beginnen und habe auch schon einige Tutorials gefunden. Leider sind die meisten für die alte SDK und nicht für 1.5 und funktionieren daher nicht.

    Was mich brennend interessieren würde ist folgendes.

    Wie kann ich von meiner ersten activity eine zweite aufrufen.
    Wie kann ich, wenn viele Controls auf meiner activity sind und ich das Handy horizontal halte, scrollen dass ich alle Controls erreichen kann?

    Vielleicht kann mir ja einer hier den Einstieg erleichtern.

    Ich benutze übrigens Eclipse und mein G2 direkt und nicht den Emulator.

    Danke
     
  2. feri, 15.05.2009 #2
    feri

    feri Junior Mitglied

    schau dir mal die beiden Methoden startActivity und startActivityWithResult an.

    Code:
    class MyActivity {
      ...
       Intent intent = new Intent(this, MyOtherActivity.class);
       startActivity(intent);
      ...
    }
    
    Und nicht vergessen einen Eintrag ins Manifest zu machen:
    Code:
            <activity android:name="MyOtherActivity" />
    
     
  3. ensacom, 15.05.2009 #3
    ensacom

    ensacom Threadstarter Android-Hilfe.de Mitglied

    Hm ich steige da noch nicht ganz durch.
    Also ich habe jetzt folgendes

    Meine Hauptactivity
    Code:
    package com.ensacom.android.ensacom1;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    
    public class ensacom1 extends Activity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            
            
            Intent intent = new Intent(this, settings.class);
            startActivity(intent);
    
        }
    }
    

    die Manifest.xml
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.ensacom.android.ensacom1"
          android:versionCode="1"
          android:versionName="1.0">
        <application android:icon="@drawable/icon" android:label="@string/app_name">
            <activity android:name=".ensacom1"
                      android:label="@string/app_name">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
        </application>
        <uses-sdk android:minSdkVersion="3" />
        <activity android:name="settings" />
    </manifest> 
    
    die settings.class
    Code:
    package com.ensacom.android.ensacom1;
    
    
    public class settings {
        
    }
    

    Beim starten der Anwendung bekomme ich immer den Fehler

    Tut uns Leid!

    Die Anwendung ensacom1
    (Prozess com.ensacom.android.ensacom1) wurde unerwartet
    beendet. Versuchen Sie es erneut.


    Was ist da falsch?
     
  4. ensacom, 15.05.2009 #4
    ensacom

    ensacom Threadstarter Android-Hilfe.de Mitglied

    Ok, den Fehler konnte ich beheben.
    Nur wieso wird nun wenn ich das Gerät drehe, die activity gewechselt?
    Ich möchte das die nur gewechselt wird wenn ich einen Button klicke.

    Das ist jetzt mein Code


    Code:
    package com.ensacom.android.ensacom1;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.os.Bundle;
    
    public class ensacom1 extends Activity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            
            
            Intent intent = new Intent(this, settings.class);
            startActivity(intent);
    
        }
    }
    Code:
    package com.ensacom.android.ensacom1;
    
    import android.app.Activity;
    import android.os.Bundle;
    
    
    public class settings extends Activity {
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.settings);
        }
    }
    
    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.ensacom.android.ensacom1"
          android:versionCode="1"
          android:versionName="1.0">
        <application android:icon="@drawable/icon" android:label="@string/app_name">
            <activity android:name=".ensacom1"
                      android:label="@string/app_name">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>
            <activity android:name=".settings" />
        </application>
        <uses-sdk android:minSdkVersion="3" />
    </manifest> 
    

    Vielleicht kann mir auch einer sagen ob an dem Code oben alles korrekt ist oder was nicht stimmt.
    Ich fange eben erst mit Java und Android an.

    Danke
     
  5. feri, 15.05.2009 #5
    feri

    feri Junior Mitglied

    Die Klasse settings muss von Activity vererbt sein, also
    Code:
    public class SettingsActivity extends Activity { ...
    
     
  6. ensacom, 15.05.2009 #6
    ensacom

    ensacom Threadstarter Android-Hilfe.de Mitglied

    Ja danke, das habe ich dann auch gemerkt und geändert.
    Jetzt muss ich nur noch herausfinden wie ich eine Aktivity über einen Button starten kann.

    Kann man einfach von aktivity zu activity ohne diese wieder schließen zu müssen?
    Also einfach zum aufrufen der activity immer so wie du es mir geschrieben hast?
     
  7. feri, 16.05.2009 #7
    feri

    feri Junior Mitglied

    Android verwaltet einen Activity-Stack. D.h. startest Du eine neue Activity, so wird diese aktiv und sichtbar. Die vorherige Activity ist nicht mehr sichtbar (kann aber immer noch im Hintergrund laufen).

    Ist mit Beispiel im SDK beschrieben:
    android-sdk-windows-1.5_r1/docs/reference/android/app/Activity.html
     
  8. ensacom, 16.05.2009 #8
    ensacom

    ensacom Threadstarter Android-Hilfe.de Mitglied

    Habe es gelesen, Danke.

    Ich habe es jetzt geschafft ein Menü zu erstellen, eins in der Haupt-activity und eins im Settings-activity.

    Über diese Menüs kann ich nun die gewünschte activity starten.

    Echt klasse, endlich geht mal was voran, dank deiner Hilfe.

    Vielen Dank nochmal.
     
Die Seite wird geladen...
Similar Threads - Tutorials für SDK Forum Datum
[Meinung] Spezielle App für Mittelstand erstellen (lassen) Android App Entwicklung Dienstag um 17:40 Uhr
[SINNLOS] Temporäre Spielwiese für die neue AH-App - einfach ignorieren Android App Entwicklung Dienstag um 13:31 Uhr
[ERLEDIGT] Tipps für AsyncTask Klasse Android App Entwicklung 18.05.2017
[UMFRAGE/INFO/DISKUSSION] Kotlin, die neue Programmiersprache für Android Android App Entwicklung 18.05.2017
[OFFEN] Welches Dateiformat für Audioeffekte mid, ogg, mp3 usw ? Android App Entwicklung 29.04.2017
[INFO/DISKUSSION] Anpassungen für Galaxy S8 und LG G6 notwendig Android App Entwicklung 30.03.2017
[ERLEDIGT] Interpolator für einen Custom Dialog verwenden in einem Fragment Android App Entwicklung 20.03.2017
[ERLEDIGT] Font Color in einem ChangeLog für 1 Wort ändern Android App Entwicklung 19.03.2017
Library für ProgressBar Android App Entwicklung 12.03.2017
[RÜCKMELDUNG FEHLT] SimpleDateFormat "if" abfrage für Tag oder Nacht Android App Entwicklung 12.03.2017