refactor the ui effect and begin to work with the list view