小编Max*_*ral的帖子

Objective-c - 在图像中获得最少使用和最常用的颜色

我试图获得最少使用的颜色,以及MP3文件的专辑插图中用于音乐播放应用程序的最常用颜色.我需要颜色来做一个像新的itunes 11的效果.菜单的背景颜色是最常用的颜色,最少使用的颜色是歌曲标签和艺术家名称的颜色.我在用

`- (UIColor*) getPixelColorAtLocation:(CGPoint)point {
    UIColor* color = nil;
    CGImageRef inImage = self.image.CGImage;
    // Create off screen bitmap context to draw the image into. Format ARGB is 4 bytes for each pixel: Alpa, Red, Green, Blue
    CGContextRef cgctx = [self createARGBBitmapContextFromImage:inImage];
    if (cgctx == NULL) { return nil; /* error */ }

    size_t w = CGImageGetWidth(inImage);
    size_t h = CGImageGetHeight(inImage);
    CGRect rect = {{0,0},{w,h}}; 

    // Draw the image to the bitmap context. Once we draw, the memory
    // allocated …
Run Code Online (Sandbox Code Playgroud)

itunes objective-c uicolor ios

25
推荐指数
2
解决办法
1万
查看次数

UIActivityViewController需要很长时间才能呈现

我为iPhone制作了一个应用程序.现在,我正在为iPad重新创建它.

当用户选择工具栏中的操作按钮时,弹出窗口应显示a UIActivityViewController,但由于某种原因,它需要大约10秒才能显示第一次.在iPhone上,它需要大约一秒钟.除了弹出框之外,它是相同的代码.

我尝试禁用弹出窗口,但仍需要大约10秒才能显示.

这是代码:

-(IBAction)Actions:(UIBarButtonItem*)sender 
{
    if ([activityPopover isPopoverVisible] == YES) 
    {
        [activityPopover dismissPopoverAnimated:YES];
        return;
    }
    UIWebView *currentWebView = ((TabView *)self.tabs[self.currentTabIndex]).webViewObject;

    NSString *currentURL = (NSString*)[currentWebView request].mainDocumentURL;
    if (currentURL == NULL) return;

    BookmarkActivity *bookmarkActivity = [[BookmarkActivity alloc] init];

    UIActivityViewController *sharing = [[UIActivityViewController alloc] initWithActivityItems:[NSArray arrayWithObject:currentURL] applicationActivities:@[bookmarkActivity]];

    activityPopover = [[UIPopoverController alloc] initWithContentViewController:sharing];
    [activityPopover presentPopoverFromBarButtonItem:sender permittedArrowDirections:UIPopoverArrowDirectionUp animated:YES];    
}
Run Code Online (Sandbox Code Playgroud)

我已经在我的iPad 3和我的iPad mini上进行了测试,两者都需要一段时间来呈现.

我该如何解决这个问题?

objective-c uipopovercontroller ios uiactivityviewcontroller

17
推荐指数
3
解决办法
6251
查看次数

Vesper如何在没有UIApplicationIsOpaque键的情况下向用户显示壁纸?

一个名为Vesper的应用程序已针对iOS 7进行了更新,并在iOS 7上显示了用户的壁纸.我发现使用UIApplicationIsOpaque键和UIBackgroundStyleLightBlur可以显示用户背景,但不会通过验证.Vesper通过验证并通过Apple.我确实将这个问题上传到开发论坛,但苹果已经把它删除了.

uiwindow uiapplication ios7

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

在AVCaptureVideoPreviewLayer上实时过滤

如何向AVCaptureVideoPreviewLayer添加过滤器?我试过制作一个CIFilter并将AVCaptureVideoPreviewLayer.filters属性设置为带过滤器的数组,但它什么也没做.

avcapturesession avcapturedevice cifilter

5
推荐指数
0
解决办法
703
查看次数

UIActivityViewController在特定操作中使用项目

我有一个UIActivityViewController,我想让它拥有safari所做的所有动作以及更多.目前我只能收到邮件,消息,推特,脸书和半工作副本.我用一个url设置了activity items数组.然后我添加了一个该URL的nsstring并添加了url,并且一切工作都很好,就像复制工作更好,通过复制字符串并将其粘贴到更多区域.但是当也有字符串时,twitter和facebook将url添加到他们的文本中并包含链接.我怎么能这样做他们没有文本,只有链接?另一个问题是如何在Twitter和Facebook活动的链接中显示Web视图预览?它只显示一个野生动物园图标.第三个问题是我如何打印网页的内容?

printing objective-c uiactivity uiactivityviewcontroller

4
推荐指数
2
解决办法
3883
查看次数

仅为UIBarButtonItem中的图像设置动画

我已经在2个应用程序中看到了这种效果,我真的想找到如何做到这一点.

动画位于UIBarButtonItem中,仅适用于图像.图像是+符号,它旋转到X.

如果你想看到效果,你必须开始与某人对话,并在文本输入旁边有图像和表情符号的+按钮.或者在另一个应用程序中看到效果的视频,在他点击按钮后,您会看到它旋转到X,http://www.youtube.com/watch?v = S8JW7euuNMo.

我已经找到了如何做效果但只在UIImageView上,我必须关闭所有自动调整并且视图模式必须居中,然后将旋转变换应用于它.我尝试了很多尝试让它在条形项目中工作的方法,到目前为止,最好的方法是添加图像视图实例,然后设置它并将视图模式设置为居中并自动恢复,然后使用该图像视图进行自定义栏项目视图.但是当我这样做时,效果会有效,除非它这样做,图像会偏向一边而不是停留在已经存在的位置.我试过在动画之前获取中心并在动画期间设置它但是它什么也没做.

objective-c rotation uiimageview uibarbuttonitem uiviewanimation

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

如何删除具有相同属性值但在NSMutableArray中具有相同属性值的所有对象

我有一个带有url字符串属性和标题的历史对象.我想使用包含搜索字符串的url搜索所有对象的历史记录,然后删除所有重复项.

示例:我有一系列历史记录对象,其中20个都是" https://www.google.com ",其中4个是" https://www.google.com/#q=search ",我想获得一个数组后面只有一个对象,其网址值为" https://www.google.com ",网址值为" https://www.google.com/#q=search "

这是我当前的代码,它搜索历史记录并返回与字符串匹配的所有对象:

    - (NSArray *)historyObjectsContainingQuery:(NSString *)query {
    NSMutableArray *matchingObjects = [[NSMutableArray alloc] init];
    HistoryManager *HM = [HistoryManager sharedInstance];
    for (int i=0; i<[[HM history] count]; i++) {
        //History "days"
        HistoryObject *historyItem = HistoryObject([[HistoryManager sharedInstance] history][i]);

        for (int o=0; o<[historyItem.objects count]; o++) {
            //Each object inn each history day
            HistoryObject *HO = HistoryObject(historyItem.objects[o]);
            if ([HO.title rangeOfString:query options:NSCaseInsensitiveSearch].location != NSNotFound) {
                //history objects with their title containing the query string
                [matchingObjects addObject:HO];
            }
        } …
Run Code Online (Sandbox Code Playgroud)

objective-c nsmutablearray nsobject nspredicate ios

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

UITableViewCell异步加载图像问题 - Swift

在我的应用程序中,我构建了自己的异步图像加载类.我传入一个对象,然后检查缓存(NSCache)是否有图像,如果没有,它将检查文件系统是否已经保存图像.如果图像尚未保存,则会在后台下载图像(NSOperations帮助).

到目前为止,这种方法很有效,但是我在表视图加载图像时遇到了一些小问题.

首先,这是我用来设置表视图单元格的函数tableView(tableView:, willDisplayCell:, forRowAtIndexPath:)

func configureCell(cell: ShowTableViewCell, indexPath: NSIndexPath) {

    // Configure cell
    if let show = dataSource.showFromIndexPath(indexPath) {

        ImageManager.sharedManager.getImageForShow(show, completionHandler: { (image) -> Void in
            if self.indexPathsForFadedInImages.indexOf(indexPath) == nil {
                self.indexPathsForFadedInImages.append(indexPath)

                if let fetchCell = self.tableView.cellForRowAtIndexPath(indexPath) as? ShowTableViewCell {
                    func fadeInImage() {
                        // Fade in image
                        fetchCell.backgroundImageView!.alpha = 0.0
                        fetchCell.backgroundImage = image
                        UIView.animateWithDuration(showImageAnimationSpeed, animations: { () -> Void in
                            fetchCell.backgroundImageView!.alpha = 1.0
                        })
                    }

                    if #available(iOS 9, *) {
                        if NSProcessInfo.processInfo().lowPowerModeEnabled {
                            fetchCell.backgroundImage = image
                        }
                        else …
Run Code Online (Sandbox Code Playgroud)

asynchronous uitableview uiimageview swift

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

带边框的透明按钮

我试图通过使按钮透明但仍带有边框的按钮来获得这种效果。当我制作透明图像时,由于某种原因,它们会使按钮变大。以下是一些效果示例。

在此图像中,导航栏上的按钮对导航栏的背景是半透明的。

左侧的“ Action Composer”按钮是透明的,但仍带有边框。

在第一个图像中,导航栏上的按钮对导航栏的背景是半透明的。

在左侧的第二个图像中,“ Action Composer”按钮是透明的,但仍带有边框。

iphone transparency objective-c uibutton ios

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

UIToolbar在景观方面不会变小

在我的主视图中,我将一个普通的UIToolbar添加到框架的底部,在横向上它不会变小?这是因为我不提供风景图片还是我错过了其他的东西?UINavigationController中的所有其他工具栏都在横向上改变了大小.

继承人我如何将这个添加到屏幕上.

toolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, SCREEN_HEIGHT-64, SCREEN_WIDTH, 44)];
toolbar.translatesAutoresizingMaskIntoConstraints = YES;
[self.view addSubview:toolbar];
[self setupToolbarItems];
Run Code Online (Sandbox Code Playgroud)

setupToolbarItems只为条形按钮创建一些图像并设置它们.

objective-c rotation uitoolbar uiviewcontroller autorotate

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

如何在块中设置ivar而不创建保留周期

我正在尝试启动一个块中NSObject调用的子类.本应该是,直到我在设置块.我需要在这个块中设置它,因为在我显示之后我在方法中保存了它FormObjectJavascriptCoreFormObjectnilJavascriptCoreUIActionSheetFormObjectUIActionSheetDelegate- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex

这是代码:

- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
    if (actionSheet.tag == kSaveFormConfirmationActionSheetTag) {
        if ([ButtonTitle isEqualToString:NSLocalizedString(@"Yes", @"Yes")]) {
            NSLog(@"Saving form data");
            NSLog(@"%@",formData);
            NSLog(@"%@",formData.dictionary);
            if (formData) {
                [[AutoFillManager defaultManager] saveFormData:formData];
                formData = nil;
            }
        }
        else if ([ButtonTitle isEqualToString:NSLocalizedString(@"Never for this Website", @"Never for this Website")]) {
            NSString *formURLString = [formData.urlString copy];
            formData = nil;
            formData = [[FormObject alloc] initWithDisabledSite:formURLString];
            [[AutoFillManager defaultManager] saveFormData:formData];
            formData = nil;

        }
        else …
Run Code Online (Sandbox Code Playgroud)

objective-c ios objective-c-blocks ivar

-2
推荐指数
1
解决办法
2012
查看次数