new APIs for responding to different cell tap events. issue #374. update demo.