zhPopupController 2.0.0

zhPopupController 2.0.0

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2020 年 4 月

soya-bean 维护。



  • snail-z

zhPopupController

Language Version License Platform

弹出您的自定义视图很容易,支持自定义遮罩样式、过渡效果和手势拖动。

示例

要运行示例项目,请克隆仓库,然后首先从 Example 目录运行 pod install

要求

  • 需要 iOS 8.0 或更高版本
  • 需要自动引用计数 (ARC)

安装

zhPopupController 可以通过 CocoaPods 获取。要安装它,只需简单地将以下行添加到您的 Podfile 中:

platform :ios, '8.0'
use_frameworks!

target 'You Project' do
    
	pod 'zhPopupController', '~> 1.0'
    
end

预览

用法

  • 直接使用 zh_popupController 弹出您自定义视图。
    [self.popupController showInView:self.view.window completion:NULL];
  • 自定义。
_popupController = [[zhPopupController alloc] initWithView:customView size:alert.bounds.size];
_popupController.presentationStyle = zhPopupSlideStyleTransform;
_popupController.presentationTransformScale = 1.25;
_popupController.dismissonTransformScale = 0.85;
// ...
[_popupController showInView:self.view.window completion:NULL];
  • 支持自动关闭。
/// The view will disappear after `dismissAfterDelay` seconds,default is 0 will not disappear
@property (nonatomic, assign) NSTimeInterval dismissAfterDelay;

  • 更新

    监听键盘变化将改变 contentView 布局

    新增 keyboardOffsetSpacing 属性。您可以通过它调整键盘出现时与键盘的相对间距。默认为 0,键盘出现时无效的手势。

    如果您想使动画一致

    您需要在 "willPresentBlock" 中调用方法 "becomeFirstResponder()",不要在这个之前调用。

    您需要在 "willDismissBlock" 中调用方法 "resignFirstResponder()"。

    /// default is NO. if YES, Will adjust view position when keyboard changes
    @property (nonatomic, assign) BOOL keyboardChangeFollowed;
    
    /// default is NO. if the view becomes first responder,you need set YES to keep the animation consistent
    @property (nonatomic, assign) BOOL becomeFirstResponded;
    _popupController.becomeFirstResponded = YES;
    _popupController.keyboardChangeFollowed = YES;
    _popupController.willPresentBlock = ^(zhPopupController * _Nonnull popupController) {
    	[textField becomeFirstResponder];
    };
            
    _popupController.willDismissBlock = ^(zhPopupController * _Nonnull popupController) {
    	[textField resignFirstResponder];
    };
    
    //...
    [_popupController show];


  • 更新

    • 支持出现/关闭滑动样式

    • 当系统版本大于 iOS 8 时,将使用 UIVisualEffectView 来实现遮罩模糊效果。


  • 更新 (2017 年 11 月 20 日 v1.0.2)
    • 新增方法 - (void)fadeDismiss 来淡出您的内容视图。

    • 在 1.0.2 中 zhPopupSlideStyleShrinkInOut 将被弃用,您应使用 zhPopupSlideStyleShrinkInOut1zhPopupSlideStyleShrinkInOut2

作者

snail-z, [email protected]

许可证

zhPopupController 在 MIT 许可证 下提供。有关更多信息,请参阅 LICENSE 文件。