gpt4 book ai didi

java - Android Studio 获取共享首选项

转载 作者:行者123 更新时间:2023-12-01 09:30:50 25 4
gpt4 key购买 nike

我在论坛上闲逛,看到很多用户正在寻找一种在文本字段中使用共享首选项并将其永久保存而不必使用“调用”按钮的方法。我是那些用户之一,呵呵..现在我有一个用户名字段,我可以单击“保存”按钮来保存数据,但是当我重新启动应用程序时,用户字段(文本字段)中的数据消失了,我必须使用另一个按钮将数据“调用”回字段。我如何更改代码,以便当您单击保存时,您刚刚写入的数据在您重新启动应用程序时保留在那里。我用于检索数据的代码如下所示。 “for123”是调用按钮的 onclick。

}
//Hämta nummer knappen
public void for123(View view){
SharedPreferences sharedPref = getSharedPreferences("userInfo", Context.MODE_PRIVATE);

String name = sharedPref.getString("username", "");
numTxt.setText(name + " ");

}

这几乎是整个mainActivityjava文件,不知道如何导入java文件的开头呵呵..

Button sendSMS;
Button sendSMSaon;
Button sendSMSaoff;
Button sendSMSrela1;
Button sendSMSrela2;
EditText msgTxt;
EditText numTxt;
EditText aonTxt;
EditText aoffTxt;
EditText rela1txt;
EditText rela2txt;


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

sendSMS = (Button) findViewById(R.id.skicka);
sendSMSaon = (Button) findViewById(R.id.skickaaon);
sendSMSaoff = (Button) findViewById(R.id.skickaaoff);
sendSMSrela1 = (Button) findViewById(R.id.skickarela1);
sendSMSrela2 = (Button) findViewById(R.id.skickarela2);

msgTxt = (EditText) findViewById(R.id.Textmeddelande);
numTxt = (EditText) findViewById(R.id.nummer);
aonTxt = (EditText) findViewById(R.id.aon);
aoffTxt = (EditText) findViewById(R.id.aoff);
rela1txt = (EditText) findViewById(R.id.rela1txt);
rela2txt = (EditText) findViewById(R.id.relä2txt);

msgTxt.setVisibility(View.INVISIBLE);
aonTxt.setVisibility(View.INVISIBLE);
aoffTxt.setVisibility(View.INVISIBLE);
rela1txt.setVisibility(View.INVISIBLE);
rela2txt.setVisibility(View.INVISIBLE);

sendSMSaoff.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String mymsgaoff = aoffTxt.getText().toString();
String theNumber = numTxt.getText().toString();
sendMsg(theNumber, mymsgaoff);
}

}

);

sendSMSaon.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String mymsgaon = aonTxt.getText().toString();
String theNumber = numTxt.getText().toString();
sendMsg(theNumber, mymsgaon);
}

}







);
sendSMS.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String myMsg = msgTxt.getText().toString();
String theNumber = numTxt.getText().toString();
sendMsg(theNumber, myMsg);
}

}
);
sendSMSrela1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String myMsgrela1 = rela1txt.getText().toString();
String theNumber = numTxt.getText().toString();
sendMsg(theNumber, myMsgrela1);
}

}
);
sendSMSrela2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String mymsgrela2 = rela2txt.getText().toString();
String theNumber = numTxt.getText().toString();
sendMsg(theNumber, mymsgrela2);
}

}







);


}

//Sparar numret

public void saveInfo(View view) {
SharedPreferences sharedPref = getSharedPreferences("userInfo", Context.MODE_PRIVATE);


SharedPreferences.Editor editor = sharedPref.edit();
editor.putString("username", numTxt.getText().toString());
editor.apply();

Toast.makeText(this, "saved", Toast.LENGTH_LONG).show();



}
//Hämta nummer knappen
public void for123(View view){
SharedPreferences sharedPref = getSharedPreferences("userInfo", Context.MODE_PRIVATE);

String name = sharedPref.getString("username", "");
numTxt.setText(name + " ");

}
private void sendMsg(String theNumber, String myMsg)
{
SmsManager sms = SmsManager.getDefault();
sms.sendTextMessage(theNumber, null, myMsg, null, null);



}

}

最佳答案

我最好的建议是在 onResume 生命周期方法中使用您的函数。这样,只要您的应用程序成为焦点,就会调用它。

它的工作原理如下:

public void for123(View view){
SharedPreferences sharedPref = getSharedPreferences("userInfo",Context.MODE_PRIVATE);
String name = sharedPref.getString("username", "");
numTxt.setText(name + " ");
}

@Override
public void onResume(){
super.onResume();
for123(/* Whatever view you are in*/);
}

祝你好运!

关于java - Android Studio 获取共享首选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39417009/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com