2014-06-17 88 views
-1

我有两个Activity s的应用程序。Android应用程序在完成活动后进入后台

第一个Activity开始第二个ActivityButton点击。在第二个Activity,我打电话finish(),也在Button点击,我希望该应用程序将返回到第一个Activity

发生什么事是应用程序得到最小化(在后台进行)。我正在开发的设备是带Android 4.4.2的索尼Xperia Z2。 这是Android的问题还是我在代码中做错了?

清单文件:

<uses-sdk 
    android:minSdkVersion="8" 
    android:targetSdkVersion="19" /> 


<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" > 
    <activity 
     android:name="com.example.test.MainActivity" 
     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="com.example.test.SecondActivity"> 
</application> 

第一项活动的onClick:

btn1 = (Button) findViewById(R.id.button1); 
    btn1.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      Intent i = new Intent(MainActivity.this, SecondActivity.class); 
      startActivity(i); 
     } 
    }); 

次活动的onClick:

btn2 = (Button) findViewById(R.id.button2); 
    btn2.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      finish(); 
     } 
    }); 
+1

请发表您的活动结束代码。 –

+0

以及清单 –

+2

,并检查在开发人员选项 - >应用程序部分 –

回答

0

首先,它不是Android的问题。

其次,请确保在您从第一个移动到第二个时您还没有完成您的第一个Activity

如果在第一类这样做:

Intent in=new Intent(A.this, B.class); 
startActivity(in); 
this.finish(); 

然后取出this.finish();,因为它完成了你的第一个Activity,当你从第二然后第一Activity回来是不存在的堆栈。那么它将如何被调用。

+0

你为什么说“这不是Android的问题”?那么这个问题是什么? –

+0

我的朋友是一个编码问题。 –

+0

确定Ronak,但这是android编码问题,而不是java或C++。 –

0

First.java

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 

public class First extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.first); 
     Button b=(Button)findViewById(R.id.button1); 
     b.setOnClickListener(new View.OnClickListener() { 

       @Override 
       public void onClick(View v) { 
        // TODO Auto-generated method stub 
        finish(); 
       } 
      }); 

    } 
} 

Second.java

import android.app.Activity; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 

public class Second extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.second); 
     Button b=(Button)findViewById(R.id.button1); 
     b.setOnClickListener(new View.OnClickListener() { 

       @Override 
       public void onClick(View v) { 
        // TODO Auto-generated method stub 
        finish(); 
       } 
      }); 

    } 
} 
+0

使用此代码,我检查了我的系统本身工作正常 – Boopathi

+0

@RaduStejerean没有意识到的是,他可能在代码中的其他地方有问题。他可以使用你的代码来看看它是否有帮助。 – Sufian

相关问题