add a flag to prevent double appear animation
close by tap outside
fix set backgroundview.frame