Как запомнить Value в студии Andorid? - PullRequest
0 голосов
/ 12 июля 2020

Я создал страницу входа, на которой пользователи могут просто ввести свое имя пользователя (пароль или авторизация не требуются), и она будет отображаться при следующем действии. Но каждый раз, когда вы открываете приложение, вы должны вводить свое имя пользователя. Как мне заставить его запомнить имя пользователя. (Язык- Java)

Спасибо!

(Я новичок)

package com.example.app;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class MainActivity extends AppCompatActivity {

    Button btn;
    EditText et;
    String st;

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

        btn= findViewById(R.id.button);
        et=findViewById(R.id.edittext);

                btn.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        Intent i=new Intent(MainActivity.this, Welcome.class);
                                st=et.getText().toString();
                                i.putExtra("Value",st);
                                startActivity(i);
                                finish();

(Это действие, при котором пользователь вводит свое имя пользователя)

package com.example.app;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.widget.TextView;

public class Welcome extends AppCompatActivity {

    TextView tv;
    String st;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_welcome);
        tv=findViewById(R.id.textView);

        st=getIntent().getExtras().getString("Value");
        tv.setText(st);

    }
}

(это приветствие)

1 Ответ

3 голосов
/ 12 июля 2020

Я думаю, вам нужно сохранить имя пользователя в Sharedpreferences, а затем, когда вы запустите свое приложение, получите значение из общих настроек и проверьте, является ли значение пустым или пустым, а затем позвольте пользователю ввести свое имя пользователя, иначе вы можете установить имя пользователя из общих настроек .

Попробуйте этот код:

   ///save sharedpreferences
        SharedPreferences sharedPreferences = 
         getSharedPreferences("prefs",Context.MODE_PRIVATE);
        SharedPreferences.Editor editor = sharedPreferences.edit();
        editor.putString("username","put here your username");
        editor.apply();


        ///get sharedpreferences
        SharedPreferences sharedPreferences1 = 
        getSharedPreferences("prefs",Context.MODE_PRIVATE);
        String username = sharedPreferences1.getString("username","");
        tv.setText(username);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...