         private var scrollPanGesture: UIPanGestureRecognizer? {
             return noticeView.gestureRecognizers?.filter({ $0 as? UIPanGestureRecognizer != nil }).first as? UIPanGestureRecognizer
         }
-        private var noticeView: HitScrollView!
+        private lazy var noticeView: HitScrollView = HitScrollView(frame: self.view.bounds)
         private weak var targetView: UIView?
         private var contentView: UIView?
         private var autoHidden: Bool = false

            
            panGesture.delegate = self
            
            noticeView = HitScrollView(frame: view.bounds)
            noticeView.clipsToBounds = false
            noticeView.showsVerticalScrollIndicator = false
            noticeView.pagingEnabled = true

    private var noticeViewController = ViewController()
    private var statusBarHidden: Bool = NavigationNotice.defaultStatusBarHidden
    public class var defaultStatusBarHidden: Bool {
        set { sharedManager.statusBarHidden = newValue }
        get { return sharedManager.statusBarHidden }
    }
    private var showAnimations: ((() -> Void, (Bool) -> Void) -> Void)? = NavigationNotice.defaultShowAnimations
    public class var defaultShowAnimations: ((() -> Void, (Bool) -> Void) -> Void)? {
        set { sharedManager.showAnimations = newValue }
        get { return sharedManager.showAnimations }
    }
    private var hideAnimations: ((() -> Void, (Bool) -> Void) -> Void)? = NavigationNotice.defaultHideAnimations
    public class var defaultHideAnimations: ((() -> Void, (Bool) -> Void) -> Void)? {
        set { sharedManager.hideAnimations = newValue }
        get { return sharedManager.hideAnimations }
    }
    
    private static let sharedManager = NoticeManager()
    
    public class func currentNotice() -> NavigationNotice? {
        return sharedManager.showingNotice
    }
    
    public class func addContent(view: UIView) -> NavigationNotice {
