Untitled

 avatar
unknown
plain_text
a year ago
2.4 kB
10
Indexable
package com.example.usersettingapp;

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

import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.app.AppCompatDelegate;

public class MainActivity extends AppCompatActivity {

    private EditText usernameInput;
    private TextView welcomeText;
    private Button saveButton, themeButton;

    private PreferencesHelper preferencesHelper;

    @Override
    protected void onCreate(Bundle savedInstanceState) {

        // Load theme before setting content view
        preferencesHelper = new PreferencesHelper(this);
        if (preferencesHelper.isDarkTheme()) {
            AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
        } else {
            AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
        }

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // Initialize views using your XML IDs
        usernameInput = findViewById(R.id.usernameInput);
        welcomeText = findViewById(R.id.WelcomeText);
        saveButton = findViewById(R.id.saveButton);
        themeButton = findViewById(R.id.themeButton);

        // Load saved username
        String savedUsername = preferencesHelper.getUsername();
        if (!savedUsername.isEmpty()) {
            welcomeText.setText("Welcome, " + savedUsername + "!");
            usernameInput.setText(savedUsername);
        }

        // Save button logic
        saveButton.setOnClickListener(v -> {
            String enteredUsername = usernameInput.getText().toString().trim();
            preferencesHelper.saveUsername(enteredUsername);
            welcomeText.setText("Welcome, " + enteredUsername + "!");
        });

        // Theme toggle logic
        themeButton.setOnClickListener(v -> {
            boolean isDark = preferencesHelper.isDarkTheme();
            preferencesHelper.setDarkTheme(!isDark);

            if (!isDark) {
                AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES);
            } else {
                AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_NO);
            }

            recreate();
        });
    }
}
Editor is loading...
Leave a Comment