Android-创建和管理活动

Android-创建和管理活动,android,android-activity,Android,Android Activity,我已经创建了两个屏幕,我将粘贴下面的代码 `FirstScreen:` i have a button and when tap/click it will go to `SecondScreen` `SecondScreen:` i have a button and when tap/click it will go to `FirstScreen` //代码:// public class FirstScreen extends Activity { /** Called whe

我已经创建了两个屏幕,我将粘贴下面的代码

`FirstScreen:` i have a button and when tap/click it will go to `SecondScreen`
`SecondScreen:` i have a button and when tap/click it will go to `FirstScreen`
//代码://

public class FirstScreen extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

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

        btn.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {
                // TODO Auto-generated method stub
                startActivity(new Intent(Main.this, SecondScreen.class));
            }
        }); 
    } 
}


public class SecondScreen extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.secondscreen);

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

        btn.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {
                // TODO Auto-generated method stub
                //startActivity(new Intent(Main.this, SecondScreen.class));
                //HOW DO I GOT TO FIRST SCREEN????
            }
        }); 
    } 
}

如果有更好的方法,请告诉我谢谢。

如果要返回第一个活动,只需完成第二个活动,而不是创建第一个活动的新实例,操作如下:

public void onClick(View v) {
    finish();
}
要从第一个活动开始第二个活动,应执行以下操作:

startActivity(new Intent(FirstScreen.this, SecondScreen.class));

如果要返回第一个活动,只需完成第二个活动,而不是创建第一个活动的新实例,操作如下:

public void onClick(View v) {
    finish();
}
要从第一个活动开始第二个活动,应执行以下操作:

startActivity(new Intent(FirstScreen.this, SecondScreen.class));
在第二个屏幕上按钮的onClick()中,只放一行:

完成()

在第二个屏幕上按钮的onClick()中,只放一行:


完成()

您可以调用
finish()
,而不是通过intent启动新活动<代码>onDestroy()在
finish()
关闭活动后调用

如果您试图通过intent返回,您还需要通过
setFlags()
设置
intent.FLAG\u ACTIVITY\u CLEAR\u TOP
标志,否则,如果您在后堆栈中不断交换活动,则会导致后堆栈中出现大量活动


除非有充分的理由不使用,否则您应该真正使用内置的后退按钮。

您可以调用
finish()
,而不是通过intent启动新的活动<代码>onDestroy()在
finish()
关闭活动后调用

如果您试图通过intent返回,您还需要通过
setFlags()
设置
intent.FLAG\u ACTIVITY\u CLEAR\u TOP
标志,否则,如果您在后堆栈中不断交换活动,则会导致后堆栈中出现大量活动



除非你有充分的理由不使用,否则你真的应该使用内置的后退按钮。

在第二个类中,使用函数finish()。

在第二个类中,使用函数finish()。

我猜在这个活动中调用finish将带你回到第一个屏幕(除非你想从这里向第一个屏幕发送一些值)。我想在这个活动中调用finish会将您带回到第一个屏幕(除非您想从这里向第一个屏幕发送一些值)。谢谢您的介绍,您有我可以学习的示例吗?1+android文档是一个开始尝试这些的好地方,我一直在寻找和阅读。。。。你有什么样品可以玩吗?谢谢你的介绍,你有我可以学习的样品吗?1+android文档是一个开始尝试这些的好地方,我一直在寻找和阅读。。。。您是否有任何示例可供使用?我在尝试上述代码(第二行)时遇到此错误
Description资源路径位置类型在scope SecondScreen中无法访问Main类型的封闭实例。java/LearnActivities/src/net/issoa/Activities第26行java问题
请确保将
Main替换为
FirstActivity。此
如我的回答所示。我的代码中有:
startActivity(新意图(FirstScreen.this,SecondScreen.class))
FirstScreen.java文件以及FirstActivity来自何处?我的错误,我的意思是
FirstScreen。这
是的,我有FirstScreen.this,正如我在上面的文章中所做的,但仍然得到与我在文章中遇到的相同的错误。当我尝试上面的代码时,我得到了这个错误(第二行)
Description资源路径位置类型在scope SecondScreen中无法访问Main类型的封闭实例。java/LearnActivities/src/net/issoa/Activities第26行java问题
请确保将
Main替换为
FirstActivity。此
如我的回答所示。我的代码中有:
startActivity(新意图(FirstScreen.this,SecondScreen.class))
FirstScreen.java文件,我有什么FirstActivity?我的错误,我的意思是
FirstScreen。这个
是的,我有FirstScreen.this,正如我在上面的帖子中所说的,但仍然得到了与我发布的相同的错误