0

我在活动中有editText。我使用 SharedPreference 来保存此值并稍后获取。我将此edittext 值传递给另一个活动按钮文本。最初我需要隐藏按钮。如果 edittext 值来自 sharedPreference 我需要显示按钮

代码:

活动:

SharedPreferences preferences = getSharedPreferences("sample",0);
                  SharedPreferences.Editor editor = preferences.edit();
                 editor.putString("Name",et.getText().toString());
                 editor.putString("Name1",et1.getText().toString());

                  editor.commit();

                  Intent intent = new Intent(Activity.this, Activity1.class);
                  startActivity(intent);

活动1:

btn=(Button)findViewById(R.id.btn);
        btn.setVisibility(View.GONE);

        SharedPreferences preferences = getSharedPreferences("sample",0);

     if(preferences){
btn.setVisibility(View.VISIBLE);
btn.setText(preferences.getString("Name", ""));

}

还有 btn setText 和 Name 和这个按钮有 Name 值,Name1 editText 值

4

4 回答 4

2
btn=(Button)findViewById(R.id.btn);
btn.setVisibility(View.GONE);

SharedPreferences preferences = getSharedPreferences("sample",0);
String Namestr=(preferences.getString("Name",""));

if(Namestr.length>0){
   btn.setVisibility(View.VISIBLE);
   btn.setText(preferences.getString("Name", ""));
}

我希望它对你有用。

于 2013-09-20T06:05:50.153 回答
0

调试这个条件你的 if(preference) 条件是错误的。

if(preferences){
btn.setVisibility(View.VISIBLE);
btn.setText(preferences.getString("Name", ""));

}
于 2013-09-20T06:07:34.123 回答
0
btn=(Button)findViewById(R.id.btn);
        btn.setVisibility(View.GONE);

        SharedPreferences preferences = getSharedPreferences("sample",0);

     if(preferences.contains("Name")){
String Namestr=(preferences.getString("Name",""));
btn.setVisibility(View.VISIBLE);
btn.setText(Namestr);

}

Oki 我认为首先你应该有一个验证条件,同时放入共享偏好。然后使用此代码。因为在我的情况下,我有 edittext 提示文本,所以在输入共享偏好之前检查它。

于 2013-09-20T06:17:32.170 回答
0
LinearLayout layout = (LinearLayout) findViewById(R.id.linear)


SharedPreferences preferences = getSharedPreferences("sample",0);
String Namestr=(preferences.getString("Name",""));

if(Namestr.length>0){
   Button button = new Button(this);
   btn.setText(preferences.getString("Name", ""));
layout.addView(button);
}
于 2013-09-20T07:19:25.373 回答