2015-11-05 198 views
-1

我創建了一個應用程序,其中包含兩個活動,當我運行應用程序時它打開第一個啓動器活動在此活動中,我添加了textView單擊此textView第二個活動已打開, 在第二個活動中,我添加了一個textView,啓動我的第一個活動(Launcer活動),但這不會發生?爲什麼?我的清單文件如下如何從其他活動啓動啓動器活動?

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.adbs.abs.dhanagarmaza" > 

    <application 
     android:allowBackup="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name=".LoginRegi" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme.NoActionBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <activity 
      android:name=".Register" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme.NoActionBar" > 
      <intent-filter> 
       <action android:name="com.adbs.abs.REGISTER" /> 

       <category android:name="android.intent.category.DEFAULT" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 

我LoginRegi(次活動的java文件的默認活動「)

protected void onCreate(Bundle registerBundle) { 
     super.onCreate(registerBundle); 
     setContentView(R.layout.register); 

     // If user wants to login then on click "Login Me" textView open activity(LoginRegi.xml) 
     loginMe = (TextView)findViewById(R.id.tvLoginMe); 
     loginMe.setOnClickListener(new View.OnClickListener(){ 
      public void onClick(View v){ 
       Intent openLoginRegi = new Intent("android.intent.action.MAIN"); 
       startActivity(openLoginRegi); 
      } 
     }); 
    } 

和LoginRegi.java(第一項活動 'LAUNCHER活動')

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_login_regi); 

     // On click signup textView => Open activity (register.xml) 
     signUp = (TextView)findViewById(R.id.tvSignUp); 
     signUp.setOnClickListener(new View.OnClickListener(){ 
      public void onClick(View v){ 
       Intent openRegister = new Intent("com.adbs.abs.REGISTER"); 
       startActivity(openRegister); 
      } 
     }); 

    } 
+0

在正常方式。通過startActivity(Intent Obj); – Androider

+0

把你的代碼放在第二個活動textview clicklistener –

+0

postcat也 –

回答

2

活動1: -

public class MainActivity extends Activity { 

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

     tvOne=(TextView)findViewById(R.id.tvOne); 

     tvOne.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent intent=new Intent(getApplicationContext(),Main2Activity.class); 
       startActivity(intent); 
      } 
     }); 
    } 


} 

活動2: -

public class Main2Activity extends Activity { 

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

     tvTwo=(TextView)findViewById(R.id.tvTwo); 

     tvTwo.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent intent=new Intent(getApplicationContext(),MainActivity.class); 
       startActivity(intent); 
      } 
     }); 
    } 
} 
+0

謝謝@Nik Patel多數民衆贊成工作:) –

0

Intent i = new Intent(this,MainActivity.class); startActivity(i);

+0

應該在哪裏添加? Manifest文件?該應用程序中沒有MainActivity。 – 0X0nosugar

0

您可以發佈您的代碼,以便我們可以得到確切的問題,因爲.. 通過finish();您可以通過Intent

0

我LoginRegi讓您prevous活動回來要麼你能做到這一點(第二個活動的java文件「DEFAULT活動」 )

protected void onCreate(Bundle registerBundle) { 
     super.onCreate(registerBundle); 
     setContentView(R.layout.register); 

     // If user wants to login then on click "Login Me" textView open activity(LoginRegi.xml) 
     loginMe = (TextView)findViewById(R.id.tvLoginMe); 
     loginMe.setOnClickListener(new View.OnClickListener(){ 
      public void onClick(View v){ 
       Intent openLoginRegi = new Intent(Register.this,LoginRegi.class); 
       startActivity(openLoginRegi); 
      } 
     }); 
    } 

和LoginRegi.java(初活性 'LAUNCHER活性')

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_login_regi); 

     // On click signup textView => Open activity (register.xml) 
     signUp = (TextView)findViewById(R.id.tvSignUp); 
     signUp.setOnClickListener(new View.OnClickListener(){ 
      public void onClick(View v){ 
       Intent openRegister = new Intent(LoginRegi.this,Register.class); 
       startActivity(openRegister); 
      } 
     }); 

    } 
+0

通過添加Intent openLoginRegi = new Intent(this,LoginRegi.class);給我錯誤>無法解析構造函數 –

+0

嘿檢查你的答案我的評論使用。它會解決你的問題 – sud

+0

使用 - >意圖openLoginRegi =新的意圖(this,LoginRegi.class); startActivity(openLoginRegi);和Intent openRegister = new Intent(this,Register.class); startActivity(openRegister); – sud