我有什麼:我的apk有應有的任務。 一個帳戶的註冊和我的apk的主菜單。如何僅在用戶註冊之前顯示錶單註冊。
我想要什麼:第一次啓動應用程序時,必須顯示註冊表格。用戶完成註冊(與服務器進行檢查)後,將啓動應用程序菜單。 (所以下一次表單註冊將不會再啓動了。)
問題:我該怎麼做?有人可以告訴我該怎麼做?一些教程或一些代碼片段?
謝謝。
我有什麼:我的apk有應有的任務。 一個帳戶的註冊和我的apk的主菜單。如何僅在用戶註冊之前顯示錶單註冊。
我想要什麼:第一次啓動應用程序時,必須顯示註冊表格。用戶完成註冊(與服務器進行檢查)後,將啓動應用程序菜單。 (所以下一次表單註冊將不會再啓動了。)
問題:我該怎麼做?有人可以告訴我該怎麼做?一些教程或一些代碼片段?
謝謝。
使用shared preferences到store 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();
}
使用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
}
你可以使用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。