Which is best practice?
A user clicks a SORT button, goes to a screen with a longish list of "sort by" options. e.g. Sort by: date, price etc...
The user selects an option and is taken directly back to the screen they were on with the sort option applied without having to confirm their selection. (If they make a mistake they have to click SORT option again to edit their "sort by" selection)
The user selects a "sort by" option and then needs to press a button first to confirm their choice before being taken back to the screen they were on with the sort option applied. (This allows them to choose another option if they accidentally click the wrong sorting option)
Note that the SORT option only rearranges the data on screen and is non-destructive.