【问题标题】:How to set the title when playing music with remove control on iPhone?如何在 iPhone 上通过删除控制播放音乐时设置标题?
【发布时间】:2012-05-15 16:41:06
【问题描述】:

我正在开发一个支持在后台播放音乐的广播应用。但我陷入了如何设置音乐标题以删除控制权。

我的应用和“音乐”的区别如下:

我应该怎么做才能让我的应用显示像“音乐”这样的音乐标题?

谢谢!

【问题讨论】:

  • 您是否尝试在一个视图中添加标签和所有这些东西?
  • 我只想添加一个标签来显示音乐名称
  • 那么所有的图片都是按钮?并添加视图对吗?
  • 双击home键,右滑多任务栏会显示。这个视图不是我创建的,它是 iOS 创建的。我很抱歉我的英语不好。
  • 对不起,我不明白,如果所有视图都是内置的,那么我认为您尝试在该视图上添加标签,但我仍然没有使用它

标签: iphone background-music


【解决方案1】:

您可以通过调用 MPNowPlayingInfoCenter 更改正在播放标签的文本,这也将允许您在锁定屏幕上修改歌曲名称、专辑、艺术家和专辑插图。

#import <MediaPlayer/MPNowPlayingInfoCenter.h>
#import <MediaPlayer/MPMediaItem.h>

MPMediaItemArtwork *albumArt;


- (void)changeTrackTitles
{
  Class playingInfoCenter = NSClassFromString(@"MPNowPlayingInfoCenter");

    if (playingInfoCenter) 
    {
        albumArt = [[MPMediaItemArtwork alloc] initWithImage: [UIImage imageNamed:@"HexagonArtwork"]];
        NSMutableDictionary *songInfo = [[NSMutableDictionary alloc] init];
        [songInfo setObject:@"SongName" forKey:MPMediaItemPropertyTitle];
        [songInfo setObject:@"AlbumName" forKey:MPMediaItemPropertyAlbumTitle];
        [songInfo setObject:@"ArtistName" forKey:MPMediaItemPropertyArtist];
        [songInfo setObject:albumArt forKey:MPMediaItemPropertyArtwork];
        [[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:songInfo];
    }
}

代码来自:jaysonlane.net

【讨论】:

    【解决方案2】:

    示例代码如下:

    #import <MediaPlayer/MPNowPlayingInfoCenter.h>
    #import <MediaPlayer/MPMediaItem.h>
    
    MPMediaItemArtwork *albumArt;
    
    
    - (void)changeTrackTitles
    {
      Class playingInfoCenter = NSClassFromString(@"MPNowPlayingInfoCenter");
    
        if (playingInfoCenter) 
        {
            albumArt = [[MPMediaItemArtwork alloc] initWithImage: [UIImage imageNamed:@"HexagonArtwork"]];
            NSMutableDictionary *songInfo = [[NSMutableDictionary alloc] init];
            [songInfo setObject:@"SongName" forKey:MPMediaItemPropertyTitle];
            [songInfo setObject:@"AlbumName" forKey:MPMediaItemPropertyAlbumTitle];
            [songInfo setObject:@"ArtistName" forKey:MPMediaItemPropertyArtist];
            [songInfo setObject:albumArt forKey:MPMediaItemPropertyArtwork];
            [[MPNowPlayingInfoCenter defaultCenter] setNowPlayingInfo:songInfo];
        }
    }
    

    【讨论】:

    • 这在 iOS5 上运行良好,但不支持 iOS4。这怎么可能在 iOS4 上完成?非常感谢!
    猜你喜欢
    • 2015-03-07
    • 1970-01-01
    • 1970-01-01
    • 2017-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多