2016-11-08 29 views
0

大家好我正在學習,並在android studio中開發一個應用程序。我的問題是我不能在啓動屏幕後進入我的登錄活動。我已經查看了網絡和計算器並應用了它,但仍然是相同的錯誤。我感謝您的幫助和答覆。如何在Android工作室的啓動畫面之後啓動另一個活動

下面是一些我的代碼

SplashScreen.java

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.splash); 

    new Handler().postDelayed(new Runnable() { 
     @Override 
     public void run() { 
      final Intent mainIntent = new Intent(SplashScreen.this, Login.class); 
      SplashScreen.this.startActivity(mainIntent); 
      SplashScreen.this.finish(); 
     } 
    },3000); 

} 

Login.java

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.login); 

    Intent intent = new Intent(Login.this, MainActivity.class); 
    startActivity(intent); 
    finish(); 
    } 

AndroidManifest.xml中

<?xml version="1.0" encoding="utf-8"?> 

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/logo" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme"> 
    <activity 
     android:name=".SplashScreen" 
     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=".Login" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme.NoActionBar"> 
     <meta-data 
      android:name="android.support.PARENT_ACTIVITY" 
      android:value=".Login"/> 
    </activity> 
    <activity 
     android:name=".MainActivity" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme.NoActionBar"> 
     <intent-filter> 
      <action android:name="com.ex.app.MainActivity" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
     </intent-filter> 
    </activity> 
</application> 

在哪裏我會錯呢?

+0

顯示錯誤日誌 –

+0

居然沒有錯誤,只是閃屏後,不要直接登錄,而不是直接到mainactivity。所以我希望它能夠直接登錄活動。 – natsuVsnaruto

+0

這是因爲在你的登錄活動中,你給出了主要活動的意圖。當觸發登錄活動時會觸發此功能,因此您無法看到登錄活動 – vishnumm93

回答

0

正如你所編寫的代碼遷移到MainActivityLogin.java

Intent intent = new Intent(Login.this, MainActivity.class); 
startActivity(intent); 
finish(); 

評論這條線的方法onCreate或保持在簽到按鈕的點擊

+0

謝謝你的幫助,所以我該怎麼辦? – natsuVsnaruto

+0

@natsuVsnaruto,因爲你有登錄屏幕,那麼你必須有一些代碼來檢查給予Id-pwd(憑證)是否有效。如果它們是有效的,那麼你應該開始你的MainActivity。 – SilentKiller

+0

它的工作!再次感謝您 – natsuVsnaruto

0

您登錄活動只是引導你到MainActivity上創建

看看這些行

Intent intent = new Intent(Login.this, MainActivity.class); 
startActivity(intent); 
0

它重定向到MainActivity直接在你的LoginActivity的onCreate你寫

Intent intent = new Intent(Login.this, MainActivity.class); 
startActivity(intent); 
finish(); 

沒有任何條件。是有條件把你的登錄檢查的條件和標準

if (<logged_in_your_condition_Check>){ 
    Intent intent = new Intent(Login.this, MainActivity.class); 
    startActivity(intent); 
    finish(); 
} 
+0

非常感謝您,我將使用該代碼。:) – natsuVsnaruto

0

爲什麼你Login.class

Intent intent = new Intent(Login.this, MainActivity.class); 
    startActivity(intent); 
    finish(); 

需要以下行,如果你正在使用中的onCreate(完成()),那麼它會立即調用onDestroy()並沒有任何意義。上述

刪除給出代碼的onCreate您的代碼將工作

相關問題