11

ユーザーがスライダーでシステム ボリュームを変更できるようにしたいのですが、これを行う唯一の方法は MPVolumeView を使用することであることに気付きました。

しかし、サンプル コードが見つからず、実装しようとしているすべてのメソッドが表示されません。

では、MPVolumeView を実装する最も簡単で正確な方法は何でしょうか?

4

3 に答える 3

11

それをジェネリックとして配置しUIView、インスペクターを使用してクラスをに設定MPVolumeViewします(MediaPlayerフレームワークもリンクしていることを確認してください)。IBでは通常のスライダーとして表示されますが、実行時には、インスタンスにMPVolumeViewなり、必要なスタイルと動作があります。これは、ボリュームコントロールを許可しないiOSシミュレーターでは期待どおりに機能しない可能性があることに注意してください。

于 2010-05-09T02:05:32.103 に答える
3

これを使用すると、自動的に取得されます

mpVolumeViewParentView.backgroundColor = [UIColor clearColor];
MPVolumeView *myVolumeView = [[MPVolumeView alloc] initWithFrame: mpVolumeViewParentView.bounds];
[mpVolumeViewParentView addSubview: myVolumeView];
[myVolumeView release];
于 2010-12-29T05:22:41.380 に答える
2

iOS 13 では、これが変更されました。クラスを に設定して IB にスライダーを追加してMPVolumeViewも機能しなくなりました。そのため、受け入れられた回答は機能しなくなりました。Apple ドキュメントで概説されている正しい方法は、UIViewIB で a を使用し、コードMPVolumeViewでサブビューとして追加することです。Swift での方法は次のとおりです。

// myVolumeViewParentView is the UIView you put in IB
let myVolumeView = MPVolumeView(frame: myVolumeViewParentView.bounds)
myVolumeViewParentView.addSubview(myVolumeView)

この方法は iOS 12 でも機能します。

于 2019-10-07T13:00:03.443 に答える