A gridview works with many models and I suppose ClistView does the same.
First your have the main $model - which is used to call the search() function to create the dataprovider.
The dataprovider also contains many models - one for each gridview row. They are called $data in each row.
Since each row in the gridview uses its own model (called $data) it does not help to store your total in $data, because the next row will not use the same $data.
If you want to store your total in such a way that ALL rows can access it, then you have to store it in the main $model.
I am not sure about the following but may help you.
In While loop we use an increment variable suppose i and do i++ at the end.
Same way you may follow by having a variable and use it inside your _view of listing to add up the total, like you variable is $totalofAll= 0 in code calling the listview than inside listview you will do $totalofAll+$data->amount.