Jak rozpocząć nową aktywność na przycisku kliknij

W aplikacji na Androida, jak uruchomić nową aktywność (GUI), gdy przycisk w innej aktywności jest kliknięty, i jak przekazać dane między tymi dwoma działaniami?

Author: MiguelHincapieC, 2010-11-15

25 answers

Spokojnie.

Intent myIntent = new Intent(CurrentActivity.this, NextActivity.class);
myIntent.putExtra("key", value); //Optional parameters
CurrentActivity.this.startActivity(myIntent);

Dodatki są pobierane z drugiej strony przez:

@Override
protected void onCreate(Bundle savedInstanceState) {
    Intent intent = getIntent();
    String value = intent.getStringExtra("key"); //if it's a string you stored.
}

Nie zapomnij dodać nową aktywność w AndroidManifest.xml:

<activity android:label="@string/app_name" android:name="NextActivity"/>
 1177
Author: Emmanuel,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-18 17:34:33

Obecne odpowiedzi są świetne, ale bardziej wyczerpująca odpowiedź jest potrzebna dla początkujących. Istnieją 3 różne sposoby rozpoczęcia nowej aktywności w systemie Android, a wszystkie używają klasy Intent; Intent / Android Developers.

  1. używając atrybutu onClick przycisku. (Początkujący)
  2. Przypisywanie OnClickListener() przez anonimową klasę. (Intermediate)
  3. Activity wide interface method using the switch statement. (Pro)

Oto link do mojego przykładu, jeśli chcesz iść dalej:

1. Używając atrybutu onClick przycisku. (Początkujący)

Przyciski mają atrybut onClick, który znajduje się wplik xml:

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:onClick="goToAnActivity"
    android:text="to an activity" />

<Button
    android:id="@+id/button2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:onClick="goToAnotherActivity"
    android:text="to another activity" />

W klasie Java:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_activity);
}

public void goToAnActivity(View view) {
    Intent intent = new Intent(this, AnActivity.class);
    startActivity(intent);
}

public void goToAnotherActivity(View view) {
    Intent intent = new Intent(this, AnotherActivity.class);
    startActivity(intent);
}

Advantage : łatwy do wykonania w locie, modułowy i może łatwo ustawić wiele onClicks W tym samym celu.

Wada : trudna czytelność podczas przeglądania.

2. Przypisywanie OnClickListener() przez anonimową klasę. (Intermediate)

Jest to, gdy ustawiasz oddzielny setOnClickListener() do każdego button i nadpisujesz każdy onClick() z własną intencją.

W klasie Java:

@Override
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main_activity);

        Button button1 = (Button) findViewById(R.id.button1);
        button1.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(view.getContext(), AnActivity.class);
                view.getContext().startActivity(intent);}
            });

        Button button2 = (Button) findViewById(R.id.button2);
        button2.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent intent = new Intent(view.getContext(), AnotherActivity.class);
                view.getContext().startActivity(intent);}
            });

Zaleta : łatwe do wykonania w locie.

Wada: będzie wiele anonimowych klas, które utrudnią czytelność podczas przeglądania.

3. Activity wide interface method using the switch statement. (Pro)

To jest kiedy używasz switch Oświadczenia dla Twoich przycisków w metodzie onClick() do zarządzania wszystkimi przyciskami aktywności.

W klasie Java:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main_activity);

    Button button1 = (Button) findViewById(R.id.button1);
    Button button2 = (Button) findViewById(R.id.button2);
    button1.setOnClickListener(this);
    button2.setOnClickListener(this);
}

@Override
public void onClick(View view) {
    switch (view.getId()){
        case R.id.button1:
            Intent intent1 = new Intent(this, AnActivity.class);
            startActivity(intent1);
            break;
        case R.id.button2:
            Intent intent2 = new Intent(this, AnotherActivity.class);
            startActivity(intent2);
            break;
        default:
            break;
    }

Zaleta : Łatwe zarządzanie przyciskami, ponieważ wszystkie przyciski są rejestrowane w jednej metodzie onClick()


Druga część pytania, przekazywanie danych, znajduje się w jak przekazać dane między aktywnościami w aplikacji na Androida?

 69
Author: Martin Sing,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-03-30 20:43:02

Utwórz intencję do aktywności ViewPerson i podaj identyfikator PersonID(na przykład dla Wyszukiwania bazy danych).

Intent i = new Intent(getBaseContext(), ViewPerson.class);                      
i.putExtra("PersonID", personID);
startActivity(i);

Następnie w aktywności ViewPerson możesz uzyskać pakiet dodatkowych danych, upewnić się, że nie jest null( w przypadku, gdy czasami nie przekazujesz danych), a następnie uzyskać dane.

Bundle extras = getIntent().getExtras();
if(extras !=null)
{
     personID = extras.getString("PersonID");
}

Teraz, jeśli chcesz udostępnić dane między dwoma działaniami, możesz również mieć globalny Singleton.

public class YourApplication extends Application 
{     
     public SomeDataClass data = new SomeDataClass();
}

Następnie wywołaj go w dowolnej aktywności przez:

YourApplication appState = ((YourApplication)this.getApplication());
appState.data.CallSomeFunctionHere(); // Do whatever you need to with data here.  Could be setter/getter or some other type of logic
 62
Author: Bryan Denny,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-11-15 16:07:57

Gdy użytkownik kliknie przycisk, bezpośrednio wewnątrz XML w ten sposób:

<Button
         android:id="@+id/button"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="TextButton"
         android:onClick="buttonClickFunction"/>

Używanie atrybutu android:onClick deklarujemy nazwę metody, która ma być obecna w aktywności rodzica. Więc muszę stworzyć tę metodę wewnątrz naszej aktywności w ten sposób:

public void buttonClickFunction(View v)
{
            Intent intent = new Intent(getApplicationContext(), Your_Next_Activity.class);
            startActivity(intent);
}
 37
Author: IntelliJ Amiya,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-08-03 06:52:32
Intent iinent= new Intent(Homeactivity.this,secondactivity.class);
startActivity(iinent);
 20
Author: vishal rangani,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-02-11 10:48:52
    Intent in = new Intent(getApplicationContext(),SecondaryScreen.class);    
    startActivity(in);

    This is an explicit intent to start secondscreen activity.
 11
Author: user1923551,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-03 11:58:34

Emmanuel,

Myślę, że dodatkowe informacje powinny być umieszczone przed rozpoczęciem aktywności, w przeciwnym razie dane nie będą jeszcze dostępne, jeśli uzyskujesz do nich dostęp w onCreate method of NextActivity.

Intent myIntent = new Intent(CurrentActivity.this, NextActivity.class);

myIntent.putExtra("key", value);

CurrentActivity.this.startActivity(myIntent);
 8
Author: user1337489,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-04-16 23:53:39

Z aktywności wysyłania spróbuj użyć następującego kodu

   //EXTRA_MESSAGE is our key and it's value is 'packagename.MESSAGE'
    public static final String EXTRA_MESSAGE = "packageName.MESSAGE";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
       ....

        //Here we declare our send button
        Button sendButton = (Button) findViewById(R.id.send_button);
        sendButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                //declare our intent object which takes two parameters, the context and the new activity name

                // the name of the receiving activity is declared in the Intent Constructor
                Intent intent = new Intent(getApplicationContext(), NameOfReceivingActivity.class);

                String sendMessage = "hello world"
                //put the text inside the intent and send it to another Activity
                intent.putExtra(EXTRA_MESSAGE, sendMessage);
                //start the activity
                startActivity(intent);

            }

Z działania otrzymującego spróbuj użyć następującego kodu:

   protected void onCreate(Bundle savedInstanceState) {
 //use the getIntent()method to receive the data from another activity
 Intent intent = getIntent();

//extract the string, with the getStringExtra method
String message = intent.getStringExtra(NewActivityName.EXTRA_MESSAGE);

Następnie wystarczy dodać następujący kod do AndroidManifest.plik xml

  android:name="packagename.NameOfTheReceivingActivity"
  android:label="Title of the Activity"
  android:parentActivityName="packagename.NameOfSendingActivity"
 7
Author: Alex Irabor,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-29 13:27:03
Intent i = new Intent(firstactivity.this, secondactivity.class);
startActivity(i);
 7
Author: Mahtab,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-14 14:15:23

Spróbuj tej prostej metody.

startActivity(new Intent(MainActivity.this, SecondActivity.class));
 7
Author: joseph sarz,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-16 20:53:42

Możesz wypróbować ten kod:

Intent myIntent = new Intent();
FirstActivity.this.SecondActivity(myIntent);
 5
Author: Prinkal,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-12-26 11:44:10

Sposobem na rozpoczęcie nowych działań jest nadawanie intencji, a istnieje określony rodzaj intencji, który można wykorzystać do przekazywania danych z jednej aktywności do drugiej. Polecam zapoznanie się z dokumentami programistycznymi Androida związanymi z intentami; jest to bogactwo informacji na ten temat i ma również przykłady.

 4
Author: Brian Driscoll,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-11-15 15:48:39

Kotlin

Pierwsza Aktywność

startActivity(Intent(this, SecondActivity::class.java)
  .putExtra("key", "value"))

Druga Aktywność

val value = getIntent().getStringExtra("key")

Sugestia

Zawsze umieszczaj klucze w stałym pliku, aby uzyskać bardziej zarządzany sposób.

companion object {
    val PUT_EXTRA_USER = "user"
}
startActivity(Intent(this, SecondActivity::class.java)
  .putExtra(PUT_EXTRA_USER, "value"))
 4
Author: Khemraj,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-06-20 09:12:55

Uruchamianie aktywności z innej aktywności jest bardzo powszechnym scenariuszem wśród aplikacji na Androida.
Aby rozpocząć działanie, potrzebujesz obiektu Intent .

Jak tworzyć obiekty intencyjne?

Obiekt intencyjny pobiera dwa parametr w swoim konstruktorze

  1. kontekst
  2. Nazwa czynności do rozpoczęcia. (lub pełna nazwa pakietu)

Przykład:

Tutaj wpisz opis obrazka

Więc dla przykład, jeśli masz dwie czynności, powiedzmy HomeActivity i DetailActivity i chcesz zacząć DetailActivity od HomeActivity (Strona główna -- > DetailActivity).

Oto fragment kodu, który pokazuje, jak rozpocząć DetailActivity od

Aktywność domowa.

Intent i = new Intent(HomeActivity.this,DetailActivity.class);
startActivity(i);
I jesteś skończony.

Powrót do części przycisk kliknij.

Button button = (Button) findViewById(R.id.someid);

button.setOnClickListener(new View.OnClickListener() {
     
     @Override
     public void onClick(View view) {
         Intent i = new Intent(HomeActivity.this,DetailActivity.class);
         startActivity(i);  
      }

});
 4
Author: Rohit Singh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-06-20 09:12:55

Uruchom inną aktywność z tej aktywności i możesz również przekazać parametry za pomocą obiektu Bundle.

Intent intent = new Intent(getBaseContext(), YourActivity.class);
intent.putExtra("USER_NAME", "[email protected]");
startActivity(intent);

Pobieranie danych w innej aktywności (Twoja aktywność)

String s = getIntent().getStringExtra("USER_NAME");
 3
Author: DroidNinja,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-23 12:02:45

// W , możesz zrobić jak / * W pierwszej aktywności, w układzie aktywności jest przycisk, który ma id jako przycisk. Załóżmy, że muszę przekazać dane jako typ String z jednej czynności do drugiej * /

     val btn = findViewById<Button>(R.id.button)
     btn.setOnClickListener {
        val intent = Intent(baseContext, SecondActivity::class.java).apply {
             putExtra("KEY", data)
        }
        startActivity(intent)
     }

/ / w drugiej aktywności możesz pobrać dane z innej aktywności jako

 val name = intent.getStringExtra("KEY")

/* przypuśćmy, że musisz przekazać obiekt Niestandardowy, wtedy powinien on być Parcelowalny. niech jest typ kolażu klasy, który muszę przejść z jednego działania do drugiego */

import android.os.Parcelable
import kotlinx.android.parcel.Parcelize

@Parcelize
class Collage(val name: String, val mobile: String, val email: String) : Parcelable

/* Aktywność Pierwsza , niech tutaj dane są typu kolaż. które muszę przekazać do innej działalności. */

val btn = findViewById<Button>(R.id.button)
         btn.setOnClickListener {
            val intent = Intent(baseContext, SecondActivity::class.java).apply {
                 putExtra("KEY", data)
            }
            startActivity(intent)
         }

/ / wtedy z drugiej aktywności otrzymamy jako

val item = intent.extras?.getParcelable<Collage>("KEY")
 3
Author: Alok Mishra,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-08-05 03:23:22

Zaimplementuj Widok.Interfejs OnClickListener i nadpisanie metody onClick.

ImageView btnSearch;

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_search1);
        ImageView btnSearch = (ImageView) findViewById(R.id.btnSearch);
        btnSearch.setOnClickListener(this);
    }

@Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btnSearch: {
                Intent intent = new Intent(Search.this,SearchFeedActivity.class);
                startActivity(intent);
                break;
            }
 2
Author: user1918566,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-06-15 14:38:23

Chociaż poprawne odpowiedzi zostały już dostarczone, ale jestem tutaj, aby szukać odpowiedzi w języku Kotlin. To pytanie nie dotyczy specyfiki języka, więc dodaję kod do wykonania tego zadania w języku Kotlin.

Oto Jak to zrobić w Kotlinie dla Andorida

testActivityBtn1.setOnClickListener{
      val intent = Intent(applicationContext,MainActivity::class.java)
      startActivity(intent)

 }
 2
Author: Abdul Rehman,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-14 10:32:45

Najprostszym sposobem otwarcia aktywności po kliknięciu przycisku jest:

  1. utwórz dwie czynności w folderze res, Dodaj przycisk do pierwszej czynności i nadaj nazwę funkcji onclick.
  2. dla każdej aktywności powinny być dwa pliki Javy.
  3. Poniżej znajduje się kod:

Główna aktywność.java

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.TextView;
import android.content.Intent;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public void goToAnotherActivity(View view) {
        Intent intent = new Intent(this, SecondActivity.class);
        startActivity(intent);
    }
}

Druga aktywność.java

package com.example.myapplication;
import android.app.Activity;
import android.os.Bundle;
public class SecondActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity1);
    }
}
AndroidManifest.xml (wystarczy dodać ten blok kodu do istniejącego)
 </activity>
        <activity android:name=".SecondActivity">
  </activity>
 2
Author: sn n,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-03-04 09:58:25

Weź najpierw przycisk w xml.

  <Button
        android:id="@+id/pre"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@mipmap/ic_launcher"
        android:text="Your Text"
        />

Utwórz listner przycisku.

 pre.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intent = new Intent(MainActivity.this, SecondActivity.class);
            startActivity(intent);
        }
    });
 1
Author: Jayesh Prajapati,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-01 08:30:19

Po kliknięciu przycisku:

loginBtn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        Intent intent= new Intent(getApplicationContext(), NextActivity.class);
        intent.putExtra("data", value); //pass data
        startActivity(intent);
    }
});

Aby otrzymać dodatkowe dane z NextActivity.class :

Bundle extra = getIntent().getExtras();
if (extra != null){
    String str = (String) extra.get("data"); // get a object
}
 1
Author: Hasib Akter,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-31 18:52:04

Wpisz kod w swojej pierwszej aktywności .

button.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {


Intent intent = new Intent(MainActivity.this, SecondAcitvity.class);
                       //You can use String ,arraylist ,integer ,float and all data type.
                       intent.putExtra("Key","value");
                       startActivity(intent);
                        finish();
            }
         });

In secondActivity.klasa

String name = getIntent().getStringExtra("Key");
 1
Author: Gyan Swaroop Awasthi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-20 09:37:18

Umieść widżet przycisku w xml jak poniżej

<Button
    android:id="@+id/button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Button"
/>

Po tym inicjalizacji i obsługi NA kliknij listener w aktywności jak poniżej ..

W aktywności przy metodzie Create:

Button button =(Button) findViewById(R.id.button); 
button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
       Intent intent = new 
            Intent(CurrentActivity.this,DesiredActivity.class);
            startActivity(intent);
    }
});
 1
Author: prakash421,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-11-09 14:20:57

Stare pytanie, ale jeśli celem jest przełączenie wyświetlanych stron, mam tylko jedną czynność i wywołuję setContentView (), gdy chcę przełączać strony (zwykle w odpowiedzi na kliknięcie przez użytkownika przycisku). To pozwala mi po prostu zadzwonić z jednej strony zawartości do drugiej. Brak intencji dodatkowych pakietów paczek i wszelkich prób przekazywania danych tam i z powrotem.

Robię kilka stron w res / layout jak zwykle, ale nie robię aktywności dla każdego. Wystarczy użyć setContentView (), aby je przełączyć w razie potrzeby.

Więc moja Jedynka () ma:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    LayoutInflater layoutInflater = getLayoutInflater();

    final View mainPage = layoutInflater.inflate(R.layout.activity_main, null);
    setContentView (mainPage);
    Button openMenuButton = findViewById(R.id.openMenuButton);

    final View menuPage = layoutInflatter.inflate(R.layout.menu_page, null);
    Button someMenuButton = menuPage.findViewById(R.id.someMenuButton);

    openMenuButton.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            setContentView(menuPage);
        }
    });

    someMenuButton.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            do-something-interesting;
            setContentView(mainPage);
        }
    }
}

Jeśli chcesz, aby przycisk Wstecz przechodził przez wewnętrzne strony przed opuszczeniem aplikacji, po prostu zawiń setContentView (), aby zapisać strony w małym stosie stron i pop te strony w onbackpressed () handler.

 1
Author: mrieker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-06-24 20:33:32

Twój przycisk xml:

 <Button
    android:id="@+id/btn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="jump to activity b"
    />

Główna aktywność.java:

 Button btn=findViewVyId(R.id.btn);
btn.setOnClickListener(btnclick);
btnclick.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
               Intent intent=new Intent();
                intent.setClass(Mainactivity.this,b.class);
                startActivity(intent);
    }
});
 0
Author: samurai,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-11-26 03:58:00