Изменить цвет панели инструментов в соответствии с переключателем, выбранным при следующем входе в систему с помощью Android Kotlin - PullRequest
2 голосов
/ 27 марта 2019

Мне нужно изменить цвет toolbar во время второго входа в систему в соответствии с RadioButton selected в первый раз при входе в систему в Android Kotlin.Я использовал sharedPreferences, чтобы получить значение radioButton, выбранное при первом входе в систему.

Чтобы установить значение переключателя в sharedPreferences при первом входе в систему, я использовал следующееcode

fun setSharedPreferences() {
        val sharedPreferences = getSharedPreferences(myPreferences, Context.MODE_PRIVATE)
        val editor = sharedPreferences.edit()
        editor.putString("Selected Value",radioButtonValue)
        editor.apply()
    }

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

fun getSharedPreferences(): String {
         val prefs = getSharedPreferences(myPreferences, Context.MODE_PRIVATE)
         restoredValue= prefs.getString("text", devMode)
         return restoredValue
}

Этокод, который я использовал для изменения цвета панели инструментов во время второго входа в систему

 val restoredText=getSharedPreferences()
 if(restoredText==="selectedRadioButtonValue")
 {
   toolbar.setBackgroundColor(Color.parseColor("#FF0000"));
 }
}

1 Ответ

1 голос
/ 27 марта 2019

прежде всего в вашем методе getSharedPreferences вы пытаетесь получить значение ключа, отличное от того, которое вы установили при первом входе в систему (вы сохраняете первое состояние входа в ключ Selected Value и пытаетесь получить от другого ключа, который text)

секунда для ответа, попробуйте ниже код

val restoredText=getSharedPreferences()
 if(restoredText.equals("selectedRadioButtonValue"))
 {
   toolbar.setBackgroundDrawable(ColorDrawable(Color.parseColor("#YOUR_COLOR_CODE")))
 }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...