42

あるアクティビティ画面から別のアクティビティ画面に移動するにはどうすればよいですか?最初の画面では、ボタンをクリックすると別のアクティビティ画面に移動する必要があるボタンが1つあります。

4

18 に答える 18

20

最も些細なケース (アクティビティから呼び出される):

startActivity(new Intent(this, ActivityToLaunch.class));

詳細はこちら: http://developer.android.com/guide/topics/fundamentals.html

于 2009-07-09T08:07:09.657 に答える
17
OnClickListener onClickListener = new OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivity(new Intent(action));
    }
};

Button button = (Button) findViewById(id);
button.setOnClickListener(onClickListener);
于 2009-07-09T10:21:24.443 に答える
16
Button x.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) 
    {
        Intent i = new Intent(y.this, Activity.class);
        startActivity(i);                   
    }
});

ここでは、Button x のリスナーを定義しました。OS はこのメソッドを呼び出し、Intent i で参照されているアクティビティを開始します。

公式のチュートリアルの例は次のとおりです: http://developer.android.com/guide/tutorials/notepad/notepad-ex2.html

于 2009-07-10T03:33:50.663 に答える
11
Button btn = (Button)findViewById(R.id.button1);

btn.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {      

        startActivity(new Intent(TestActivity.this,second.class));

    }
});
于 2012-05-17T18:59:42.157 に答える
8
public void onClick(View v) 
{
    Intent myintent = new Intent(currentclass.this, nextactivity.class);
    startActivity(myintent);                               
}
于 2012-03-06T08:55:28.423 に答える
5

このタスクは、Intents という名前の Android のメイン ビルディング ブロックの 1 つと、public void startActivity (Intent intent)Activity クラスに属するメソッドの 1 つを使用して実行できます。

インテントは、実行される操作の抽象的な記述です。startActivity を使用して Activity を起動し、broadcastIntent を関連する BroadcastReceiver コンポーネントに送信し、startService(Intent) または bindService(Intent, ServiceConnection, int) を使用してバックグラウンド サービスと通信できます。

インテントは、異なるアプリケーション内のコード間で遅延ランタイム バインディングを実行するための機能を提供します。その最も重要な用途は、活動の開始であり、活動間の接着剤と考えることができます。これは基本的に、実行されるアクションの抽象的な記述を保持する受動的なデータ構造です。

公式ドキュメントを参照してください - http://developer.android.com/reference/android/content/Intent.html

public void startActivity (Intent intent)-- 新しいアクティビティを開始するために使用されます。

2 つの Activity クラスがあり、ボタンのクリックOnClickListener()で 1 つの Activity から別の Activity に移動したいとします。

  1. PresentActivity -- これは、2 番目のアクティビティに移動する現在のアクティビティです。

  2. NextActivity -- これは、移動する次のアクティビティです。

したがって、インテントは次のようになります

Intent(PresentActivity.this, NextActivity.class)

最後に、これは完全なコードになります

  public class PresentActivity extends Activity {
        protected void onCreate(Bundle icicle) {
            super.onCreate(icicle);

            setContentView(R.layout.content_layout_id);

            final Button button = (Button) findViewById(R.id.button_id);
            button.setOnClickListener(new View.OnClickListener() {
                public void onClick(View v) {
                    // Perform action on click   

                    Intent activityChangeIntent = new Intent(PresentActivity.this, NextActivity.class);

                    // currentContext.startActivity(activityChangeIntent);

                    PresentActivity.this.startActivity(activityChangeIntent);
                }
            });
        }
    }

この例はボタン クリックに関連しています。ボタン クリック内に記述されているコードはOnClickListener()、アクティビティを切り替えたい任意の場所で使用できます。

于 2013-06-25T20:05:15.773 に答える
4
final Context cont = this;
Button btnClickABC =(Button)findViewById(R.id.btnClickABC);
btnClickABC.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {                   
                startActivity(new Intent(cont, NextActivity.class));

            }
        });
于 2011-06-08T12:46:22.403 に答える
3

次のコードを使用してください。これがお役に立てば幸いです。

Button button = (Button)findViewById(R.id.xxx);
button.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View v) {
        Intent intent=new Intent(CurrentActivity.this,NextActivity.class);
        startActivity(intent);
    }
});

xxxは、ボタンの xml からの ID です。

于 2012-03-06T09:21:42.817 に答える
1
startActivity(new Intent(this,newActivity.class));
于 2011-06-10T15:36:23.660 に答える
0

次のコード スニペットを使用して、次の画面に移動できます。

コトリン

startActivity(Intent(this, LoginActivity::class.java))

ジャワ

startActivity(new Intent(this, LoginActivity.class))

ここに参照があります: Android 開発者 - 別のアクティビティの開始

于 2019-05-29T04:45:40.697 に答える
0

このコードを試してください:

 Button my_btn;
 my_btn = findViewById(R.id.submit_btn);
 my_btn.setOnClickListener(new View.OnClickListener() {
     @Override
     public void onClick(View v) {
         setContentView(R.layout.activity_2);
     }
 });
于 2020-04-04T16:00:59.773 に答える
0
 Cartoon_card.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) 
        
        {
            newActivity();
            
        }
    });
    
}
public void newActivity()
{
    Intent selectClass= new Intent(getApplicationContext(), com.example.fyp.videoplayer.class);
    startActivity(selectClass);
    
}
于 2021-01-12T06:08:23.553 に答える