add preferences
add custom view
add custom view