簡體   English   中英

Android中的活動未按預期啟動

[英]Activity in android not starting as intended

我所進行的場景包括3個活動:1-主頁2-登錄3-注冊現在的事情是主頁有2個按鈕,一個登錄,一個用於主頁,登錄活動應從此按鈕或在注冊后從內部注冊調用我完成注冊后,登錄和注冊活動都會膨脹2個不同的片段。

問題:登錄活動沒有啟動,相反,有時它只是閃爍一下,它應該膨脹一會兒,然后又回到前一個活動,無論是哪個活動,也當我將登錄活動替換為另一個活動時,它通常沒有啟動問題

任何想法可能是什么。

注意:我沒有收到任何錯誤

登錄活動代碼:

package engezni.Activties;

import android.annotation.TargetApi;
import android.app.ActionBar;
import android.app.Activity;
import android.os.Build;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.WindowManager;
import android.widget.FrameLayout;
import android.widget.TextView;

import Fragments.SigninFragment;
import engezni.Activties.R;

public class SignInScreen extends Activity {
FrameLayout frameLayout;
SigninFragment signinFragment;
TextView signinScreen;

@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2)
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_sign_in_screen);

    this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
    getActionBar().setCustomView(R.layout.custom_action_bar);
    getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
    /*Setting text to the textview in the xml actionbar layout */
    signinScreen = (TextView) findViewById(R.id.actionbarTitleOrderScreen);
    signinScreen.setText("Sign In");
    getActionBar().setDisplayHomeAsUpEnabled(true);
    getActionBar().setHomeButtonEnabled(true);
    getActionBar().setDisplayShowHomeEnabled(false);
    getActionBar().setBackgroundDrawable(getResources().getDrawable(R.drawable.actionbar));
    getActionBar().setHomeAsUpIndicator(getResources().getDrawable(R.drawable.backlogo));

    frameLayout=(FrameLayout)findViewById(R.id.signin_framelayout);
    signinFragment=new SigninFragment();
    if (findViewById(R.id.signin_framelayout) != null) {
        if (savedInstanceState != null) {
            return;
        }
        signinFragment.setArguments(getIntent().getExtras());
        getFragmentManager().beginTransaction().add(R.id.signin_framelayout, signinFragment).commit();

    }



}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.sign_in_screen, menu);
    onBackPressed();
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();
    if (id == R.id.action_settings) {
        return true;
    }
    return super.onOptionsItemSelected(item);
}

}

然后這是清單

 <uses-permission android:name="android.permission.INTERNET" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".SplashScreen"
        android:label="@string/app_name"
        android:screenOrientation="portrait"
        android:theme="@android:style/Theme.Light.NoTitleBar.Fullscreen" >
        >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".HomeScreen"
        android:label="@string/title_activity_home_screen"
        android:screenOrientation="portrait" >
    </activity>
    <activity
        android:name=".SignInScreen"
        android:label="@string/title_activity_sign_in_screen"
        android:screenOrientation="portrait" >
    </activity>
    <activity
        android:name=".RegisterScreen"
        android:label="@string/title_activity_register_screen"
        android:screenOrientation="portrait" >
    </activity>
    <activity
        android:name=".MyActivity"
        android:label="@string/title_activity_my" >
    </activity>
</application>

問題:

getMenuInflater().inflate(R.menu.sign_in_screen, menu);
onBackPressed();

調用onCreateOptionsMenu ,您將返回上一個活動,因為您調用了onBackPressed將會破壞當前活動。

解:

刪除onBackPressed

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM