2016-04-10 53 views
-1

我在xml文件中有一个标签,我想在此标签中存储一些文本,例如,当我第一次运行我的应用程序时,标签应该显示消息“首次运行”,当我关闭它并且打开它应该告诉我的消息,“第二次运行”,当我删除应用程序,再次运行它应该再次显示我“第一次运行”。可以任何人帮助我如何做到please.Iow我应该如何使用在这种情况下共享首选项?Android onCreate和onResume活动

[这是使用应用程序运行计数器代码中,我试图][1]

+1

可能的重复每次:http://stackoverflow.com/questions/7217578/check-if首先运行 – SterAllures

+0

使用'SharedPreference' –

+0

好吧,我想发布文本作为文本,但它给了我一些问题,这就是为什么 –

回答

1

做吧。您可以通过以下做到这一点:

你运行你获得和更新共享偏好值,应用反

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_mobile_main); 
    int appCounter = getIntPreferences("SP_APP_COUNTER"); 
    if(appCounter == -1) { 
     // Label your text here for first run    
    } else { 
     // Label your text here for second run and so for... 
    } 
     // update counter 
     appCounter++; 
     updatePreferences("SP_APP_COUNTER", appCounter); 

} 


public void updatePreferences(String key, int value) { 
    SharedPreferences settings = context.getSharedPreferences("your_project_name", Context.MODE_PRIVATE); 
    SharedPreferences.Editor editor = settings.edit(); 
    editor.putInt(key, value); 
    editor.commit(); 

} 

public int getIntPreferences(String key) { 
    SharedPreferences settings = context.getSharedPreferences("your_project_name", 0); 
    return settings.getInt(key, -1); 
} 
+0

非常感谢你的帮助我了解它,除了一部分你能告诉我什么是上下文吗?例如context.getSharedPreferences? –

+0

此上下文在我的代码中出现错误。 –

+0

它是您的应用程序上下文。使用getApplicationContext() –