2017-09-17 177 views
-2

我正面临一个非常奇怪的问题。我正在尝试启动一项活动,但不是那样,另一项活动正在开放。我正在尝试打开RegActivity,我确实已经在mainfiest中指定了它,并且让它启动了活动,但是当我运行“MainActivity”应用程序正在调用时,它不是那样。 MainActivity甚至不是Launcher或Default活动。我清理了这个项目,重建了它。但是,仍然没有用。我被卡住了。我浪费了整整一天,没有任何帮助。请帮助伙计! 停止downvoting它。如果你不知道答案,那就留下吧。活动未开始;另一项活动是开始而不是

我MainFiest

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

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.CALL_PHONE" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> 
    <uses-permission android:name="android.permission.GET_TASKS" /> 
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
    <uses-permission android:name="android.permission.VIBRATE" /> 

    <uses-feature 
     android:glEsVersion="0x00020000" 
     android:required="true" /> 

    <application 
     android:allowBackup="true" 
     android:hardwareAccelerated="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="Frizzy" 
     android:theme="@style/AppTheme2" > 
     <activity 
      android:name="com.solodroid.ecommerce.RegActivity" 
      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="com.solodroid.ecommerce.MainActivity" 
      android:label="@string/app_name" 
      android:screenOrientation="portrait" > 

     </activity> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityCategoryList" 
      android:screenOrientation="portrait" /> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityMenuList" 
      android:configChanges="keyboardHidden|orientation" 
      android:screenOrientation="portrait" 
      android:windowSoftInputMode="stateHidden" /> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityMenuDetail" 
      android:screenOrientation="portrait" /> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityCart" 
      android:screenOrientation="portrait" /> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityCheckout" 
      android:configChanges="keyboardHidden|orientation" 
      android:screenOrientation="portrait" 
      android:windowSoftInputMode="stateHidden" /> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityConfirmMessage" 
      android:screenOrientation="portrait" /> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityContactUs" 
      android:screenOrientation="portrait" /> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityProfile" 
      android:screenOrientation="portrait" /> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityInformation" 
      android:screenOrientation="portrait" /> 
     <activity 
      android:name="com.solodroid.ecommerce.ActivityAbout" 
      android:screenOrientation="portrait" /> 
     <activity 
      android:name="com.solodroid.ecommerce.LoginActivity" 
      android:screenOrientation="portrait" 
      android:theme="@style/AppTheme.NoActionBar"/> 

     <service android:name="com.parse.PushService" /> 

     <receiver android:name="com.parse.ParseBroadcastReceiver" > 
      <intent-filter> 
       <action android:name="android.intent.action.BOOT_COMPLETED" 
       /> 
       <action android:name="android.intent.action.USER_PRESENT" /> 
      </intent-filter> 
     </receiver> 
    </application> 

</manifest> 

RegActivity.java

package com.solodroid.ecommerce; 

import android.content.Intent; 
import android.os.AsyncTask; 
import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.util.Log; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 
import android.widget.Toast; 

import org.json.JSONException; 

import java.io.IOException; 
import java.util.HashMap; 

public class RegActivity extends AppCompatActivity { 

    private EditText etid, etname, etstorename, etemail, etphone, etdoj; 
    Button btnregister; 
    TextView tvlogin; 
    private ParseContent parseContent; 
    PreferenceHelper preferenceHelper; 
    private final int RegTask = 1; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_reg); 

     preferenceHelper = new PreferenceHelper(this); 
     parseContent = new ParseContent(this); 

     if(preferenceHelper.getIsLogin()){ 
      Intent intent = new Intent(RegActivity.this,MainActivity.class); 
      intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); 
      startActivity(intent); 
      this.finish(); 
     } 

     //etid = (EditText) findViewById(R.id.etmi_id); 
     etname = (EditText) findViewById(R.id.etname); 
     //etstorename = (EditText) findViewById(R.id.etstore_name); 
     etemail = (EditText) findViewById(R.id.etemail); 
     etphone = (EditText) findViewById(R.id.etphone); 
     // etdoj = (EditText) findViewById(R.id.etdoj); 
     btnregister = (Button) findViewById(R.id.btn); 
     tvlogin = (TextView) findViewById(R.id.tvlogin); 

     tvlogin.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent intent = new Intent(RegActivity.this,LoginActivity.class); 
       startActivity(intent); 
      } 
     }); 

     btnregister.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       try { 
        register(); 
       } catch (IOException e) { 
        e.printStackTrace(); 
       } catch (JSONException e) { 
        e.printStackTrace(); 
       } 
      } 
     }); 

    } 

    private void register() throws IOException, JSONException { 

     if (!AndyUtils.isNetworkAvailable(RegActivity.this)) { 
      Toast.makeText(RegActivity.this, "Internet is required!", Toast.LENGTH_SHORT).show(); 
      return; 
     } 
     AndyUtils.showSimpleProgressDialog(RegActivity.this); 
     final HashMap<String, String> map = new HashMap<>(); 
     // map.put(AndyConstants.Params.MI_ID, etid.getText().toString()); 
     map.put(AndyConstants.Params.NAME, etname.getText().toString()); 
     // map.put(AndyConstants.Params.STORE_NAME, etstorename.getText().toString()); 
     map.put(AndyConstants.Params.EMAIL, etemail.getText().toString()); 
     map.put(AndyConstants.Params.PHONE, etphone.getText().toString()); 
     //map.put(AndyConstants.Params.DOJ, etdoj.getText().toString()); 
     new AsyncTask<Void, Void, String>(){ 
      protected String doInBackground(Void[] params) { 
       String response=""; 
       try { 
        HttpRequest req = new HttpRequest(AndyConstants.ServiceType.REGISTER); 
        response = req.prepare(HttpRequest.Method.POST).withData(map).sendAndReadString(); 
       } catch (Exception e) { 
        response=e.getMessage(); 
       } 
       return response; 
      } 
      protected void onPostExecute(String result) { 
       //do something with response 
       Log.d("newwwss", result); 
       onTaskCompleted(result, RegTask); 
      } 
     }.execute(); 
    } 

    private void onTaskCompleted(String response,int task) { 
     Log.d("responsejson", response.toString()); 
     AndyUtils.removeSimpleProgressDialog(); //will remove progress dialog 
     switch (task) { 
      case RegTask: 

       if (parseContent.isSuccess(response)) { 

        parseContent.saveInfo(response); 
        Toast.makeText(RegActivity.this, "Registered Successfully!", Toast.LENGTH_SHORT).show(); 
        Intent intent = new Intent(RegActivity.this,MainActivity.class); 
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); 
        startActivity(intent); 
        this.finish(); 

       }else { 
        Toast.makeText(RegActivity.this, parseContent.getErrorMessage(response), Toast.LENGTH_SHORT).show(); 
       } 
     } 
    } 
} 

LoginActivity.java

package com.solodroid.ecommerce; 

import android.content.Intent; 
import android.os.AsyncTask; 
import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.util.Log; 
import android.view.View; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.TextView; 
import android.widget.Toast; 

import org.json.JSONException; 

import java.io.IOException; 
import java.util.HashMap; 

public class LoginActivity extends AppCompatActivity { 

    private EditText etemail, etpassword; 
    Button btnlogin; 
    TextView tvreg; 
    private ParseContent parseContent; 
    private final int LoginTask = 1; 
    PreferenceHelper preferenceHelper; 

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

     parseContent = new ParseContent(this); 
     preferenceHelper = new PreferenceHelper(this); 

     etemail = (EditText) findViewById(R.id.etusername); 
     etpassword = (EditText) findViewById(R.id.etpassword); 
     btnlogin = (Button) findViewById(R.id.btn); 
     tvreg = (TextView) findViewById(R.id.tvreg); 

     tvreg.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       Intent intent = new Intent(LoginActivity.this, RegActivity.class); 
       startActivity(intent); 
      } 
     }); 

     btnlogin.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       try { 
        login(); 
       } catch (IOException e) { 
        e.printStackTrace(); 
       } catch (JSONException e) { 
        e.printStackTrace(); 
       } 
      } 
     }); 
    } 

    private void login() throws IOException, JSONException { 

     if (!AndyUtils.isNetworkAvailable(LoginActivity.this)) { 
      Toast.makeText(LoginActivity.this, "Internet is required!", Toast.LENGTH_SHORT).show(); 
      return; 
     } 
     AndyUtils.showSimpleProgressDialog(LoginActivity.this); 
     final HashMap<String, String> map = new HashMap<>(); 
     map.put(AndyConstants.Params.EMAIL, etemail.getText().toString()); 
     map.put(AndyConstants.Params.PASSWORD, etpassword.getText().toString()); 
     new AsyncTask<Void, Void, String>(){ 
      protected String doInBackground(Void[] params) { 
       String response=""; 
       try { 
        HttpRequest req = new HttpRequest(AndyConstants.ServiceType.LOGIN); 
        response = req.prepare(HttpRequest.Method.POST).withData(map).sendAndReadString(); 
       } catch (Exception e) { 
        response=e.getMessage(); 
       } 
       return response; 
      } 
      protected void onPostExecute(String result) { 
       //do something with response 
       Log.d("newwwss", result); 
       onTaskCompleted(result,LoginTask); 
      } 
     }.execute(); 
    } 

    private void onTaskCompleted(String response, int task) { 
     Log.d("responsejson", response.toString()); 
     AndyUtils.removeSimpleProgressDialog(); //will remove progress dialog 
     switch (task) { 
      case LoginTask: 
       if (parseContent.isSuccess(response)) { 
        parseContent.saveInfo(response); 
        Toast.makeText(LoginActivity.this, "Login Successfully!", Toast.LENGTH_SHORT).show(); 
        Intent intent = new Intent(LoginActivity.this,RegActivity.class); 
        intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); 
        startActivity(intent); 
        this.finish(); 
       }else { 
        Toast.makeText(LoginActivity.this, parseContent.getErrorMessage(response), Toast.LENGTH_SHORT).show(); 
       } 
     } 
    } 
} 

MainActivity.java

package com.solodroid.ecommerce; 

import java.io.IOException; 
import java.util.ArrayList; 

import com.parse.Parse; 
import com.parse.ParseAnalytics; 
import com.parse.ParseInstallation; 
import com.parse.PushService; 

import android.annotation.SuppressLint; 
import android.app.ActionBar; 
import android.app.AlertDialog; 
import android.app.Fragment; 
import android.content.DialogInterface; 
import android.content.Intent; 
import android.content.res.Configuration; 
import android.content.res.TypedArray; 
import android.database.SQLException; 
import android.graphics.drawable.ColorDrawable; 
import android.net.Uri; 
import android.os.Bundle; 
import android.support.v4.app.ActionBarDrawerToggle; 
import android.support.v4.app.FragmentActivity; 
import android.support.v4.view.GravityCompat; 
import android.support.v4.widget.DrawerLayout; 
import android.util.DisplayMetrics; 
import android.util.Log; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.ListView; 
import android.widget.Toast; 

@SuppressLint("NewApi") 
public class MainActivity extends FragmentActivity { 
    private DrawerLayout mDrawerLayout; 
    private ListView mDrawerList; 
    private ActionBarDrawerToggle mDrawerToggle; 

    // nav drawer title 
    private CharSequence mDrawerTitle; 

    // used to store app title 
    private CharSequence mTitle; 

    // slide menu items 
    private String[] navMenuTitles; 
    private TypedArray navMenuIcons; 

    private ArrayList<NavDrawerItem> navDrawerItems; 
    private AdapterNavDrawerList adapter; 

    // declare dbhelper and adapter object 
    static DBHelper dbhelper; 
    AdapterMainMenu mma; 

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

     // Parse push notification 
     Parse.initialize(this, getString(R.string.parse_application_id), getString(R.string.parse_client_key)); 
     ParseAnalytics.trackAppOpened(getIntent()); 
     PushService.setDefaultPushCallback(this, MainActivity.class); 
     ParseInstallation.getCurrentInstallation().saveInBackground(); 

     mTitle = mDrawerTitle = getTitle(); 

     // load slide menu items 
     navMenuTitles = getResources().getStringArray(R.array.nav_drawer_items); 

     // nav drawer icons from resources 
     navMenuIcons = getResources().obtainTypedArray(R.array.nav_drawer_icons); 

     mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); 
     mDrawerList = (ListView) findViewById(R.id.list_slidermenu); 

     mDrawerLayout.setDrawerShadow(R.drawable.navigation_drawer_shadow, GravityCompat.START); 

     navDrawerItems = new ArrayList<NavDrawerItem>(); 

     // adding nav drawer items to array 
     navDrawerItems.add(new NavDrawerItem(navMenuTitles[0], navMenuIcons.getResourceId(0, -1))); 

     navDrawerItems.add(new NavDrawerItem(navMenuTitles[1], navMenuIcons.getResourceId(1, -1))); 
     navDrawerItems.add(new NavDrawerItem(navMenuTitles[2], navMenuIcons.getResourceId(2, -1))); 
     navDrawerItems.add(new NavDrawerItem(navMenuTitles[3], navMenuIcons.getResourceId(3, -1))); 

     navDrawerItems.add(new NavDrawerItem(navMenuTitles[4], navMenuIcons.getResourceId(4, -1))); 
     navDrawerItems.add(new NavDrawerItem(navMenuTitles[5], navMenuIcons.getResourceId(5, -1))); 
     navDrawerItems.add(new NavDrawerItem(navMenuTitles[6], navMenuIcons.getResourceId(6, -1))); 

     navDrawerItems.add(new NavDrawerItem(navMenuTitles[7], navMenuIcons.getResourceId(7, -1))); 
     navDrawerItems.add(new NavDrawerItem(navMenuTitles[8], navMenuIcons.getResourceId(8, -1))); 
     navDrawerItems.add(new NavDrawerItem(navMenuTitles[9], navMenuIcons.getResourceId(9, -1))); 

     // Recycle the typed array 
     navMenuIcons.recycle(); 

     mDrawerList.setOnItemClickListener(new SlideMenuClickListener()); 

     // setting the nav drawer list adapter 
     adapter = new AdapterNavDrawerList(getApplicationContext(), navDrawerItems); 
     mDrawerList.setAdapter(adapter); 

     // enabling action bar app icon and behaving it as toggle button 
     getActionBar().setDisplayHomeAsUpEnabled(true); 
     getActionBar().setHomeButtonEnabled(true); 

     ActionBar bar = getActionBar(); 
     bar.setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.header))); 

     // get screen device width and height 
     DisplayMetrics dm = new DisplayMetrics(); 
     getWindowManager().getDefaultDisplay().getMetrics(dm); 

     // checking internet connection 
     if (!Constant.isNetworkAvailable(MainActivity.this)) { 
      Toast.makeText(MainActivity.this, getString(R.string.no_internet), Toast.LENGTH_SHORT).show(); 
     } 

     mma = new AdapterMainMenu(this); 
     dbhelper = new DBHelper(this); 

     // create database 
     try { 
      dbhelper.createDataBase(); 
     } catch (IOException ioe) { 
      throw new Error("Unable to create database"); 
     } 

     // then, the database will be open to use 
     try { 
      dbhelper.openDataBase(); 
     } catch (SQLException sqle) { 
      throw sqle; 
     } 

     // if user has already ordered food previously then show confirm dialog 
     if (dbhelper.isPreviousDataExist()) { 
      showAlertDialog(); 
     } 

     mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.drawable.ic_drawer, // nav 
                           // menu 
                           // toggle 
                           // icon 
       R.string.app_name, // nav drawer open - description for 
            // accessibility 
       R.string.app_name // nav drawer close - description for 
            // accessibility 
     ) { 
      public void onDrawerClosed(View view) { 
       getActionBar().setTitle(mTitle); 
       // calling onPrepareOptionsMenu() to show action bar icons 
       invalidateOptionsMenu(); 
      } 

      public void onDrawerOpened(View drawerView) { 
       getActionBar().setTitle(mDrawerTitle); 
       // calling onPrepareOptionsMenu() to hide action bar icons 
       invalidateOptionsMenu(); 
      } 
     }; 
     mDrawerLayout.setDrawerListener(mDrawerToggle); 

     if (savedInstanceState == null) { 
      // on first time display view for first nav item 
      displayView(0); 
     } 
    } 

    // show confirm dialog to ask user to delete previous order or not 
    void showAlertDialog() { 
     AlertDialog.Builder builder = new AlertDialog.Builder(this); 
     builder.setTitle(R.string.confirm); 
     builder.setMessage(getString(R.string.db_exist_alert)); 
     builder.setCancelable(false); 
     builder.setPositiveButton(getString(R.string.yes), new DialogInterface.OnClickListener() { 

      public void onClick(DialogInterface dialog, int which) { 
       // TODO Auto-generated method stub 
       // delete order data when yes button clicked 
       dbhelper.deleteAllData(); 
       dbhelper.close(); 

      } 
     }); 

     builder.setNegativeButton(getString(R.string.no), new DialogInterface.OnClickListener() { 

      public void onClick(DialogInterface dialog, int which) { 
       // TODO Auto-generated method stub 
       // close dialog when no button clicked 
       dbhelper.close(); 
       dialog.cancel(); 
      } 
     }); 
     AlertDialog alert = builder.create(); 
     alert.show(); 

    } 

    @Override 
    public void onBackPressed() { 
     // TODO Auto-generated method stub 
     dbhelper.deleteAllData(); 
     dbhelper.close(); 
     finish(); 
     overridePendingTransition(R.anim.open_main, R.anim.close_next); 
    } 

    /** 
    * Slide menu item click listener 
    */ 
    private class SlideMenuClickListener implements ListView.OnItemClickListener { 
     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      // display view for selected nav drawer item 
      displayView(position); 
     } 
    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     getMenuInflater().inflate(R.menu.main, menu); 
     return true; 
    } 

    @Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     // toggle nav drawer on selecting action bar app icon/title 
     if (mDrawerToggle.onOptionsItemSelected(item)) { 
      return true; 
     } 
     // Handle action bar actions click 
     switch (item.getItemId()) { 
     case R.id.rate_app: 
      try { 
       startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + getPackageName()))); 
      } catch (android.content.ActivityNotFoundException anfe) { 
       startActivity(new Intent(Intent.ACTION_VIEW, 
         Uri.parse("http://play.google.com/store/apps/details?id=" + getPackageName()))); 
      } 
      return true; 
     case R.id.more_app: 
      startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(getString(R.string.more_apps)))); 
      return true; 
     default: 
      return super.onOptionsItemSelected(item); 
     } 
    } 

    /* 
    * * Called when invalidateOptionsMenu() is triggered 
    */ 
    @Override 
    public boolean onPrepareOptionsMenu(Menu menu) { 
     // if nav drawer is opened, hide the action items 
     boolean drawerOpen = mDrawerLayout.isDrawerOpen(mDrawerList); 
     menu.findItem(R.id.ic_menu).setVisible(!drawerOpen); 
     return super.onPrepareOptionsMenu(menu); 
    } 

    /** 
    * Diplaying fragment view for selected nav drawer list item 
    */ 
    private void displayView(int position) { 
     // update the main content by replacing fragments 
     Fragment fragment = null; 
     switch (position) { 
     case 0: 
      fragment = new ActivityHome(); 
      break; 
     case 1: 
      startActivity(new Intent(getApplicationContext(), ActivityCategoryList.class)); 
      overridePendingTransition(R.anim.open_next, R.anim.close_next); 
      break; 
     case 2: 
      startActivity(new Intent(getApplicationContext(), ActivityCart.class)); 
      overridePendingTransition(R.anim.open_next, R.anim.close_next); 
      break; 
     case 3: 
      startActivity(new Intent(getApplicationContext(), ActivityCheckout.class)); 
      overridePendingTransition(R.anim.open_next, R.anim.close_next); 
      break; 
     case 4: 
      startActivity(new Intent(getApplicationContext(), ActivityProfile.class)); 
      overridePendingTransition(R.anim.open_next, R.anim.close_next); 
      break; 
     case 5: 
      startActivity(new Intent(getApplicationContext(), ActivityInformation.class)); 
      overridePendingTransition(R.anim.open_next, R.anim.close_next); 
      break; 
     case 6: 
      startActivity(new Intent(getApplicationContext(), ActivityAbout.class)); 
      overridePendingTransition(R.anim.open_next, R.anim.close_next); 

      break; 
     case 7: 
      Intent sendInt = new Intent(Intent.ACTION_SEND); 
      sendInt.putExtra(Intent.EXTRA_SUBJECT, getString(R.string.app_name)); 
      sendInt.putExtra(Intent.EXTRA_TEXT, "E-Commerce Android App\n\"" + getString(R.string.app_name) 
        + "\" \nhttps://play.google.com/store/apps/details?id=" + getPackageName()); 
      sendInt.setType("text/plain"); 
      startActivity(Intent.createChooser(sendInt, "Share")); 
      break; 
     case 8: 
      startActivity(new Intent(getApplicationContext(), ActivityContactUs.class)); 
      overridePendingTransition(R.anim.open_next, R.anim.close_next); 

      break; 
     case 9: 
      dbhelper.deleteAllData(); 
      dbhelper.close(); 
      MainActivity.this.finish(); 
      overridePendingTransition(R.anim.open_next, R.anim.close_next); 

      break; 

     default: 
      break; 
     } 

     if (fragment != null) { 
      android.app.FragmentManager fragmentManager = getFragmentManager(); 
      fragmentManager.beginTransaction().replace(R.id.frame_container, fragment).commit(); 

      // update selected item and title, then close the drawer 
      mDrawerList.setItemChecked(position, true); 
      mDrawerList.setSelection(position); 
      setTitle(navMenuTitles[position]); 
      mDrawerLayout.closeDrawer(mDrawerList); 
     } else { 
      // error in creating fragment 
      Log.e("MainActivity", "Error in creating fragment"); 
     } 
    } 

    @Override 
    public void setTitle(CharSequence title) { 
     mTitle = title; 
     getActionBar().setTitle(mTitle); 
    } 

    /** 
    * When using the ActionBarDrawerToggle, you must call it during 
    * onPostCreate() and onConfigurationChanged()... 
    */ 

    @Override 
    protected void onPostCreate(Bundle savedInstanceState) { 
     super.onPostCreate(savedInstanceState); 
     // Sync the toggle state after onRestoreInstanceState has occurred. 
     mDrawerToggle.syncState(); 
    } 

    @Override 
    public void onConfigurationChanged(Configuration newConfig) { 
     super.onConfigurationChanged(newConfig); 
     // Pass any configuration change to the drawer toggls 
     mDrawerToggle.onConfigurationChanged(newConfig); 
    } 

} 

请告诉我这里有什么问题?我什么也没找到。

+0

看起来像'preferenceHelper.getIsLogin()'总是返回true。如果情况并非如此,您仍然需要帮助,请添加更多代码,以便其他人可以重现错误。 – 0X0nosugar

+0

@ 0X0nosugar请检查编辑后的代码 – user7939485

+0

在清单中注释掉MainActivity。这样,当您运行应用程序并尝试打开活动时,您将得到一个未找到活动的异常,这将指示您的代码中的活动从何处启动。 – Kuffs

回答

1

怎么样在你的onCreate代码()

if(preferenceHelper.getIsLogin()){ 
      Intent intent = new Intent(RegActivity.this,MainActivity.class); 
      intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK); 
      startActivity(intent); 
      this.finish(); 
     } 

如果preferenceHelper.getIsLogin()是真实的你不会看到你的RegActivity东阳它会立即开始MainActivity。

+0

你的意思是我应该排除它? – user7939485

+0

是的尝试排除测试或尝试使用'if(!preferenceHelper.getIsLogin())' –