2012-09-11 132 views
2

我有什麼:我的apk有應有的任務。 一個帳戶的註冊和我的apk的主菜單。如何僅在用戶註冊之前顯示錶單註冊。

我想要什麼:第一次啓動應用程序時,必須顯示註冊表格。用戶完成註冊(與服務器進行檢查)後,將啓動應用程序菜單。 (所以下一次表單註冊將不會再啓動了。)

問題:我該怎麼做?有人可以告訴我該怎麼做?一些教程或一些代碼片段?

謝謝。

回答

0

使用shared preferencesstore info,wheather用戶已經註冊或不註冊。根據這個節目註冊或直接進入主菜單。

public static final String PREFS_NAME = "PrefLogFile"; 
public static final String PREF_REGISTERED = "registered"; 
final SharedPreferences pref = getSharedPreferences(PREFS_NAME, MODE_PRIVATE); 
    // sets righr preferences 

    boolean registered = pref.getBoolean(PREF_REGISTERED, false); 
    if (registered) { 
     //go to main menu here 
    }else{ 
    //do registration here 


    //after registration is complete do this:  
    pref.edit().putBoolean(PREF_REGISTERED, true).commit(); 


    } 
0

使用Share Preference爲此目的。在你的表單註冊的oncreat()方法中使用這樣的

  protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub!! 
    super.onCreate(savedInstanceState); 


     SharedPreferences versionfile = getSharedPreferences(PREFS_NAME,Context.MODE_PRIVATE); 
     boolean isRegister =versionfile.getString("Registration",false); 
     if(isRegister){ 
       setContentView(R.id.yourRegistrationlayout) 
     }else 
         //Start menu Activity 

    } 
0

你可以使用SharedPreferences。這些首選項僅用於此目的。

class MainMenu extends Activity { 
    protected static final String PREFS_USER = "user"; 

    @Override 
    public void onStart() { 
    super.onStart(); //don't forget this, because you must call parent onStart method 
    SharedPreferences prefs = getSharedPreferences(PREFS_FILE, 0); 
    String userKey = prefs.getString("userKey", null); 

    //if user key is not set yet, you should open registration Activity 
    if (userKey == null) { 
     Intent intent = new Intent(this, Registration.class); 
     startActivity(intent); 
    } 
    } 
} 

O使用onStart方法,因爲您需要在完成後重新檢查用戶註冊。

然後用戶成功註冊,您可以設置用戶鍵絲毫驗證碼:

SharedPreferences prefs = getSharedPreferences(PREFS_FILE, 0); 
prefs.edit().putString("userKey", userKey).commit(); 

此外,你可以用startActivityforResult

結合一些其他的參考和解釋可以成立here