iOS 7 - 自定义 UIView 的动态壁纸行为

Posted

技术标签:

【中文标题】iOS 7 - 自定义 UIView 的动态壁纸行为【英文标题】:iOS 7 - Behavior of dynamic wallpapers for custom UIViews 【发布时间】:2013-09-13 03:33:49 【问题描述】:

我一直在摆弄新的 Xcode 5 GM 和 UIDynamics,以在 iPhone 仪表板上创建类似于新的“气泡”壁纸的效果。

我想要基本相同的东西。某些图像作为子视图添加到自定义 UIView 中,并作为 UIDynamicItem 添加到 UIGravityBehavior 到 UIDynamicAnimator。但它似乎并没有真正起作用。

主视图控制器

    - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil 
        self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
        if (self) 
            self.image = [[MYImageView alloc] initWithFrame:CGRectMake(70, 200, 200, 200)];
            [self.view addSubview:self.image];
            UIDynamicAnimator *dynamicAnimator = [[UIDynamicAnimator alloc] initWithReferenceView:self.view];
            UIGravityBehavior *gravity = [[UIGravityBehavior alloc] init];
            [dynamicAnimator addBehavior:gravity];
            [gravity addItem:self.image];
            self.view.alpha = 0.5f;
        
        return self;
    

MYImageView.h

    @interface NoteView : UIView <UIDynamicItem>

    @property(nonatomic, readonly) CGRect bounds;
    @property(nonatomic, readwrite) CGPoint center;
    @property(nonatomic, readwrite) CGAffineTransform transform;

在 .m 中,我只是创建一个 ImageView 并将其作为子视图添加到 self。 self 的边界将返回为添加的 imageView 大小的两倍。

我没有收到任何错误,应用程序也正常显示,但我没有收到任何重力反应。

感谢您的帮助! 奔驰

【问题讨论】:

【参考方案1】:

看看我的 github 项目,它展示了如何在 ios 7 中使用 UIDynamic 功能: 我希望它有帮助;)

https://github.com/debris/AIMBalloon

【讨论】:

以上是关于iOS 7 - 自定义 UIView 的动态壁纸行为的主要内容,如果未能解决你的问题,请参考以下文章

ios 本地工程加载自定义动态库时,需要对动态库进行签名吗

Android自定义动态壁纸开发

如何自定义一个View,并动态设置style

安卓手机如何自定义设置动态壁纸

在用户选择/在 ios swift 中突出显示时动态删除自定义 UIView

自定义dialog可动态更新吗