Android保存EditText并在下次打开应用时调用它

时间:2016-03-16 19:28:29

标签: java android

我的代码中有一个 editText 框和一个按钮。我想保存在文本框中输入的文字,并在下次打开应用时调用它。

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;


public class MainActivity extends Activity {

EditText txtLink;
Button btnOpenLink;
String defaultLink;
String secondLink;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    defaultLink = "http://";
    secondLink = ".whatver.com";

    txtLink = (EditText) findViewById(R.id.editText);
    btnOpenLink = (Button) findViewById(R.id.button);
    btnOpenLink.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            String server = txtLink.getText().toString();
            if(!TextUtils.isEmpty(server)){
                Intent intent=new Intent(MainActivity.this,webactivity.class);
                intent.setData(Uri.parse(defaultLink+server+secondLink));
                startActivity(intent);
            }else{
                Toast.makeText(MainActivity.this, "Please enter your server name.", Toast.LENGTH_LONG).show();
            }
        }
    });
}

}

如何实现这一目标?我尝试了很多我通过谷歌找到的东西,但似乎没有一个正常工作,我知道这是我最有可能的事情,我不能让它正常工作。

1 个答案:

答案 0 :(得分:3)

使用偏好设置....

实施例

SharedPreferences spref = getSharedPreferences("your_prefs_name", Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = spref.edit();
editor.putString("myTextViewValue", prefVal); //
editor.commit();

有些当应用程序再次启动时,请将其读回:

实施例

SharedPreferences preferences = getPreferences(Activity.MODE_PRIVATE);
String storedPreference = preferences.getStr("myTextViewValue", null);

这样验证你存储的内容并检查你得到的偏好是否为空,这意味着在...之前没有存储任何内容。