block方法代替delegate