2012-09-11 101 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