У меня есть AppSwitch
, который используется для «активации / деактивации» учетных записей пользователей в моем приложении. Он проверяет состояние, считывается из базы данных, которая работает как задумано, изменяя как переключатель, так и текст в зависимости от bool за пользователя.
Моя проблема
Каждый раз, когда я открываю страницу с включенным AppSwitch
, он отправляет сигнал onCheckedChanged
- в свою очередь, отправляется ли уведомление пользователю, его учетная запись активирована? Я планировал уведомить пользователей, что их учетная запись была активна, с помощью push-уведомления, но не хочу, чтобы эта отправка отправлялась каждый раз, когда администратор переходит на их страницу!
Я использую Felgo (ранее V-Play) для разработки, ссылка на документацию AppSwitch
:
Felgo AppSwitch
Мой код:
Rectangle {
width: parent.width / 2
height: parent.height
Column {
id: column
anchors.fill: parent
AppButton {
id: groupStatusText
width: parent.width
height: parent.height / 2
}
AppSwitch {
id: editStatus
knobColorOn: "#b0ced9"
backgroundColorOn: "#81b1c2"
checked: {
//userListItem is the current profile details of the user page
if(userListItem.groupStatus === 1) {
groupStatusText.text = "Deactivate this user"
}
else if(userListItem.groupStatus === 0) {
groupStatusText.text = "Activate this user"
}
}
onCheckedChanged: {
if(editStatus.checked === true) {
//the signal which sends to my database on updating the value,
//works as intended but sends signal each time page is created?
detailPage.adminEditGroupStatus(1)
} else {
detailPage.adminEditGroupStatus(0)
}
}
}
}
Является ли нормальным поведение срабатывания сигнала onCheckedChanged
при каждом загрузке страницы? или как я могу изменить это, чтобы оно срабатывало только тогда, когда пользователь его меняет!?
Спасибо за любую помощь!