小编Ped*_*dro的帖子

AVPlayer项目获得持续时间

我正在播放文件.来自url的mp3流.我正在使用AVPlayer,当我试图获得构建进度条的总时间时,只要时间是南,我就会得到.

 NSError *setCategoryError = nil;
    if ([ [AVAudioSession sharedInstance] isOtherAudioPlaying]) { // mix sound effects with music already playing
        [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategorySoloAmbient error:&setCategoryError];
    } else {
        [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryAmbient error:&setCategoryError];
    }
    if (setCategoryError) {
        NSLog(@"Error setting category! %ld", (long)[setCategoryError code]);
    }
    NSURL *url = [NSURL URLWithString:@"http://..//46698"];

    AVPlayer *player = [AVPlayer playerWithURL:url];
    songPlayer=player;
    [songPlayer addObserver:self forKeyPath:@"status" options:0 context:nil];



- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context {

    if (object == songPlayer && [keyPath isEqualToString:@"status"]) {
        if (songPlayer.status == AVPlayerStatusFailed) {
            NSLog(@"AVPlayer …
Run Code Online (Sandbox Code Playgroud)

objective-c ios avplayer

9
推荐指数
3
解决办法
6827
查看次数

在 iOS 11.2.2 上隐藏后退按钮

我试图隐藏导航栏的后退按钮。我可以在早于 iOS 11.2.2 的所有 iOS 版本中做到这一点

I've already tried the following code:

 self.navigationController?.navigationItem.setHidesBackButton(true, animated: true)
 self.navigationController?.navigationItem.hidesBackButton = true
 self.navigationItem.setHidesBackButton(true, animated: true)
 self.navigationItem.hidesBackButton = true
Run Code Online (Sandbox Code Playgroud)

Nothing seems to work in iOS 11.2.2

I'm using Xcode 9 and Swift 4

uinavigationbar ios swift

3
推荐指数
1
解决办法
3130
查看次数

没有零的NSArray的最小值和最大值

我有一个NSArray,想知道最大和最小整数.

我目前使用:

int max = [[array valueForKeyPath:@"@max.intValue"] intValue];
int min = [[array valueForKeyPath:@"@min.intValue"] intValue];
Run Code Online (Sandbox Code Playgroud)

但现在我想知道没有输入零的最小值和最大值(数组只有正值)

ex:
array=[3, 6 ,7 , 13, 86, 45, 0]
min=3
max=86
Run Code Online (Sandbox Code Playgroud)

有没有办法实现这个目标?

objective-c nsarray ios

1
推荐指数
1
解决办法
142
查看次数

Objective-C中FOR循环的奇怪行为

发现我无法找到解释的情况.

我在objective-c中有一个数组数组.这种情况下,数组有4个空数组.

NSArray *dados = [[NSArray alloc] initWithObjects:
             [[NSArray alloc] init],
             [[NSArray alloc] init],
             [[NSArray alloc] init],
             [[NSArray alloc] init],
             nil];
Run Code Online (Sandbox Code Playgroud)

如果它有两个或更多数字,我希望"for"通过内部数组.

for(int i=0; i<((NSArray *)[dados objectAtIndex:1]).count-1;i++){
        NSLog(@"do anything");
    }
Run Code Online (Sandbox Code Playgroud)

这个"for"进入无限循环.
但是,如果我使用"NSLog"告诉我条件是-1,并且"不"应该发生

NSLog(@"%d",((NSArray *)[dados objectAtIndex:1]).count-1);

2014-02-20 15:37:42.563 iKL Time-sheet[31666:a0b] -1
Run Code Online (Sandbox Code Playgroud)

当停止条件为0 <-1时,这个"for"怎么可能变成无限循环?

如果有人能解释什么能够更好地理解我所感谢的语言,那么这被认为是一个奇怪的案例

--------------------- // ----------------
回答:

for(int i=0; i<(int)(((NSArray *)[dados objectAtIndex:1]).count-1);i++){
            NSLog(@"do anything");
        }
Run Code Online (Sandbox Code Playgroud)

这个演员阵容运作良好,对此的解释在于下面的答案

arrays for-loop objective-c ios

1
推荐指数
1
解决办法
111
查看次数