如何从一个屏幕导航到另一屏幕

java android android-activity

61311 观看

12回复

2502 作者的声誉

如何从一个“活动”屏幕导航到另一个“活动”屏幕?在第一个屏幕中,我有一个按钮,如果我单击该按钮,则必须移至另一个“活动”屏幕。

作者: Kumar 的来源 发布者: 2009 年 7 月 9 日

回应 12


17

43819 作者的声誉

最琐碎的情况(从活动中调用):

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

此处有更多详细信息:http : //developer.android.com/guide/topics/fundamentals.html

作者: yanchenko 发布者: 2009 年 7 月 9 日

14

2832 作者的声誉

决定
OnClickListener onClickListener = new OnClickListener() {
    @Override
    public void onClick(View v) {
        startActivity(new Intent(action));
    }
};

Button button = (Button) findViewById(id);
button.setOnClickListener(onClickListener);
作者: Chiwai Chan 发布者: 2009 年 7 月 9 日

16

9963 作者的声誉

Button x.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) 
    {
        Intent i = new Intent(y.this, Activity.class);
        startActivity(i);                   
    }
});

在这里,我们为Button x定义了一个侦听器。操作系统将调用此方法并启动Intent i中引用的Activity。

这是官方教程示例:http : //developer.android.com/guide/tutorials/notepad/notepad-ex2.html

作者: Will 发布者: 2009 年 7 月 10 日

4

13283 作者的声誉

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));

            }
        });
作者: Azhar 发布者: 2011 年 6 月 8 日

1

77 作者的声誉

startActivity(new Intent(this,newActivity.class));
作者: Mostafiz 发布者: 2011 年 6 月 10 日

7

71 作者的声誉

public void onClick(View v) 
{
    Intent myintent = new Intent(currentclass.this, nextactivity.class);
    startActivity(myintent);                               
}
作者: kusuma 发布者: 2012 年 3 月 6 日

3

1384 作者的声誉

使用以下代码。.希望对您有所帮助。

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是来自Button的xml的ID。

作者: Umesh 发布者: 2012 年 3 月 6 日

10

214 作者的声誉

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));

    }
});
作者: G.S. Shekhawat 发布者: 2012 年 5 月 17 日

4

18153 作者的声誉

可以使用名为Intents的android主要构建模块之一和public void startActivity (Intent intent)属于Activity类的方法之一来完成此任务。

目的是要执行的操作的抽象描述。它可以与startActivity一起使用来启动一个Activity,可以将broadcastIntent发送到任何感兴趣的BroadcastReceiver组件,也可以与startService(Intent)或bindService(Intent,ServiceConnection,int)一起与后台Service通信。

Intent提供了一种在不同应用程序中的代码之间执行后期运行时绑定的功能。它最重要的用途是在启动活动时,可以将其视为活动之间的粘合剂。它基本上是一个被动数据结构,其中包含要执行的动作的抽象描述。

请参阅官方文档-http: //developer.android.com/reference/android/content/Intent.html

public void startActivity (Intent intent) -用于发起新活动。

因此,假设您有两个Activity类,然后单击一个按钮,OnClickListener()您想从一个Activity移至另一个Activity,

  1. PresentActivity-这是您当前要进行的第二项活动。

  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()在要在活动之间进行切换的任何位置的按钮单击内部编写的任何位置使用代码。

作者: Nikhil Agrawal 发布者: 2013 年 6 月 25 日

1

1207 作者的声誉

从一项活动切换到另一项活动确实很简单,但是对于一项新活动来说却很棘手。您的下一个课程必须在中定义AndroidManifest.xml。这是测试人员类:

<activity
  android:name=".Tester"
  android:label="@string/title_activity_tester" >`enter code here`
</activity>


final Button button = (Button) findViewById(R.id.btnGo);// btnGo is id 
button.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        Intent i = new Intent(CurrentClass.this, Tester.class);
        startActivity(i);
    }
作者: Ayaz Akbar 发布者: 2015 年 10 月 1 日

0

469 作者的声誉

您可以使用以下代码段导航至下一个屏幕:

科特林

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

爪哇

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

参考:Android开发人员-开始另一个活动

作者: superm0 发布者: 2019 年 5 月 29 日

0

320 作者的声誉

首先,您需要在第一个活动中声明并初始化Button:

 Button btn;
 btn = (Button) findViewById(R.id.btn);

现在在第一个活动中按钮的onclick如下所示:

  btn.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
       Intent i = new Intent(x.this, y.class);
        startActivity(i);
        }
    }
});

并且Intent将引导您进行第二项活动。

作者: Twisha Kotecha 发布者: 2019 年 9 月 17 日
32x32