Мне удалось это исправить, переместив компонент звукового эффекта из делегата и динамически изменив источник звука при нажатии кнопки следующим образом:
Внутри делегата:
Rectangle{
signal tapped();
...
Button{
id: delegateButton
anchors.fill: parent
Material.elevation: 0
onPressed: tapped()
}
}
Внутри моей главной страницы:
SoundEffect{
id: sound
}
...
ListView{
delegate:{
...
onTapped: {sound.source = audiosource; sound.play()}
}
}