add view delegate and data source