For the slection and click you can use selector exemple :
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/clr_main_green_pressed" android:state_selected="true" android:state_window_focused="false"/>
<item android:drawable="@color/clr_main_green_pressed" android:state_selected="true"/>
<item android:drawable="@color/clr_main_green_pressed" android:state_pressed="true" android:state_selected="false"/>
<item android:drawable="@android:color/white" android:state_selected="false"/>
</selector>
Some shape/color/ changes exemple :
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
<corners android:radius="12dp" />
<solid android:color="@android:color/white" />
<padding
android:bottom="0dp"
android:left="0dp"
android:right="0dp"
android:top="0dp" />
</shape>
And use the two together exemple :
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:drawable="@drawable/rounded_border"/>
<item android:drawable="@drawable/selector_button"/>
</layer-list>