![](/img/trans.png)
[英]How to call a method/an action inside UIViewController from custom UIView?
[英]How to call a UIViewController property in custom uiview?
我的viewController中有一个AVAudioPlayer属性,如果正在播放音乐,我想在自定义uiview中绘制一个圆圈。
在我的MyViewController.h中:
@property (strong, nonatomic) AVAudioPlayer *audio;
在我看来。
- (void) drawCircle
{
//DRAW Circle
}
现在我想检查一下View.m是否正在播放音频。
我试图在View.h中添加以下内容
@property (nonatomic, assign) MyViewController *ViewController_audio;
然后执行if ([ViewController_audio _audio].playing) { }
但这没用。
您的语法错误。 摆脱下划线:
if ([ViewController_audio audio].playing)
要么
if (ViewController_audio.audio.playing)
两种语法均有效。
PS“...它不工作”是超级无益。 总是解释会发生什么。 就您而言,我假设您遇到了编译器错误。 因此,复制并粘贴编译器错误的全文,并明确告知发生错误的行。
视图不应具有对视图控制器的引用。 这是一个糟糕的设计。 相反,您应该在视图中具有一个标志,该标志将在播放时由视图控制器设置。 该视图将读取此属性并做出ui决策。
从设计的前景来看,我建议不要留下任何决定。 是有权思考的视图控制器,一个视图仅应显示。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.