小编Mah*_*abu的帖子

player.duration在MPMoviePlayerController中为视频文件显示始终为零

我正在使用此代码在mpmediaplayer控制器中播放一个小视频

MPMoviePlayerController *player = [[MPMoviePlayerController alloc] 
                                   initWithContentURL:[NSURL fileURLWithPath:videostr]]; 
Run Code Online (Sandbox Code Playgroud)

其中videostr是该视频文件的路径.

现在我需要得到该视频文件的长度,因为我正在使用此代码.

length = player.duration;
Run Code Online (Sandbox Code Playgroud)

但它总是显示0.000.但视频播放效果很好.

我正在通过谷歌搜索每个代码来获取视频持续时间player.duration.

我也尝试了其他一些代码

AVURLAsset *asset = [[[AVURLAsset alloc] initWithURL:[NSURL fileURLWithPath:videostr] 
                                             options:[NSDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithBool:YES], AVURLAssetPreferPreciseDurationAndTimingKey, nil]] autorelease];
NSTimeInterval duration; 
if (asset) 
    duration = CMTimeGetSeconds(asset.duration) ;
NSLog(@">>>>>>>>>>>>>>>>>>>> %f", asset.duration);
Run Code Online (Sandbox Code Playgroud)

即使它显示为零.任何人都可以帮助我.

预先感谢.

iphone mpmovieplayercontroller ios

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

如何在mapview中添加自定义标注视图

我是objective-c中的mapkit新手.我可以在mapview中添加自定义注释.

我需要放置自定义标注视图,如下图所示

像这样.

但我没有得到如何设计这样的标注视图.

我知道我需要在视图中为注释方法添加callout.

- (MKAnnotationView *)mapView:(MKMapView *)map viewForAnnotation:(id <MKAnnotation>)annotation
{
    static NSString *AnnotationViewID = @"annotationViewID";

    MKAnnotationView *annotationView = (MKAnnotationView *)[mapview dequeueReusableAnnotationViewWithIdentifier:AnnotationViewID];

    if (annotationView == nil)
    {
        annotationView = [[[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:AnnotationViewID] autorelease];
    }

    annotationView.image = [UIImage imageNamed:@"blue_without_pin.png"];
    annotationView.annotation = annotation;


    return annotationView;
}
Run Code Online (Sandbox Code Playgroud)

iphone objective-c mkmapview mkannotationview

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