【发布时间】:2009-03-11 05:28:13
【问题描述】:
我正在尝试制作一个简单的 iphone 应用程序,它有两个按钮:开始和停止。当您点击开始时,它会开始收听手机的麦克风音量,并让标签显示您对麦克风说话的音量。当您点击停止时,它会停止收听。
我发现了一个很棒的类,叫做SCListener,但我不知道如何实现它。现在我有一个连接到以下代码的按钮
-(IBAction)getVolume
{
SCListener *listener = [SCListener sharedListener];
[listener listen];
Float32 peakPower = [listener peakPower];
NSString *theString = [NSString stringWithFormat:@"Level is: %1.2f", peakPower];
[volumeLabel setText:theString];
}
这很好用,但只能获得一次音量。我试图做类似的事情:
[listener addObserver:self
forKeyPath:@"peakPower"
options:NSKeyValueObservingOptionOld
context:NULL];
但由于 peakPower 是一种方法而不是变量,我无法对其进行观察。我将如何使用像SCListener 这样的类来设置一个允许用户按下按钮并不断更新标签的应用程序?
谢谢, JP
【问题讨论】:
标签: iphone objective-c cocoa-touch