小编Río*_*ire的帖子

设置UIImageView的contentMode

在Obj-C

imageView.contentMode = UIViewContentModeScaleAspectFill;

将设置contentMode.

为什么

imageView.contentMode = UIViewContentModeScaleAspectFill

不在Swift工作?

ios swift

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

找到cv :: Mat的最大值

我试图找到a的最大像素值cv::Mat.

问题:*maxValue总是回归0.

这个SO线程,我理解' max_element返回迭代器,而不是值.这就是我使用*maxValue'的原因

cv::Mat imageMatrix;

double  sigmaX = 0.0;
int ddepth = CV_16S; //  ddepth – The desired depth of the destination image


cv::GaussianBlur( [self cvMatFromUIImage:imageToProcess], imageMatrix, cv::Size(3,3), sigmaX);

cv::Laplacian(imageMatrix, imageMatrix, ddepth, 1);

std::max_element(imageMatrix.begin(),imageMatrix.end());

std::cout << "The maximum value is : " << *maxValue << std::endl;
Run Code Online (Sandbox Code Playgroud)

注意:如果min_element替换代替max_element,则minValue代替maxValue,*minValue将始终返回0.

c++ opencv pointers iterator computer-vision

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

大多数内存有效的方法将照片保存到iPhone上的磁盘?

从剖析中Instruments我了解到,我将图像保存到磁盘的方式导致了内存峰值~60MB.这导致应用程序发出low memory warnings,(不一致)导致iPhone4S运行中的崩溃iOS7.

我需要最有效的方法将图像保存到磁盘.

我目前正在使用此代码

+ (void)saveImage:(UIImage *)image withName:(NSString *)name {
    NSData *data = UIImageJPEGRepresentation(image, 1.0);
    DLog(@"*** SIZE *** : Saving file of size %lu", (unsigned long)[data length]);
    NSFileManager *fileManager = [NSFileManager defaultManager];
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectory = [paths objectAtIndex:0];
    NSString *fullPath = [documentsDirectory stringByAppendingPathComponent:name];
    [fileManager createFileAtPath:fullPath contents:data attributes:nil];
}
Run Code Online (Sandbox Code Playgroud)

笔记:

  1. 减少compressionQuality参数值UIImageJPEGRepresentation不会显着降低内存峰值.例如 compressionQuality = 0.8,3MB通过100写入平均减少内存峰值.但是,它确实减少了磁盘上数据的大小(显然),但这对我没有帮助.

  2. UIImagePNGRepresentation取而代之的 …

iphone objective-c avfoundation uiimage ios

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

什么是CocoaPods"(未使用)"

运行后pod outdated,我得到以下输出

Updating spec repo `master`
Analyzing dependencies
The following pod updates are available:
- AFNetworking 2.4.4 -> 2.5.4 (latest version 3.0.0-beta.2)
- HexColors 2.2.1 -> 2.2.1 (latest version 3.0.0)
- Overcoat 3.0.0 -> (unused) (latest version 3.2.1)
- ReactiveCocoa 2.5 -> 2.5 (latest version 4.0.4-alpha-4)
Run Code Online (Sandbox Code Playgroud)

我之前没有见过这个"未使用"的术语

Overcoat 3.0.0 ->(没用过) (latest version 3.2.1)

这是什么?这是什么意思?

ios cocoapods

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

减少在iOS上使用OpenCv的方法所消耗的内存

在iOS上使用OpenCV对a进行一些图像处理UIImage.

该方法processImage消耗了太多内存.当我用仪器中的分配来分析应用程序时.将Live Bytes在峰65MB70MB大约一秒钟.这会导致应用程序崩溃.

它曾经更高,即~90MB改变int ddepth减少(从)CV_16SCV_8U.虽然我确实理解减少"目标图像的所需深度"可能会减少所消耗的内存,但我不明白选择最佳格式的内部工作原理.

减少ddepth似乎也增加了该方法的执行时间.

我希望大大减少Live Bytes峰值并减少方法的执行时间.

任何有关如何实现这一目标的见解将不胜感激.

- (void)processImage:(UIImage *)imageToProcess
{
cv::Mat imageMatrix;

double  sigmaX = 1.0;

int ddepth = CV_8U; //  ddepth – The desired depth of the destination image

cv::GaussianBlur( [self cvMatFromUIImage:imageToProcess], imageMatrix, cv::Size(3,3), sigmaX);

cv::Laplacian(imageMatrix, imageMatrix, ddepth, 1);

double minVal;
double maxVal;

cv::minMaxLoc(imageMatrix, &minVal, &maxVal);

std::cout << "min val …
Run Code Online (Sandbox Code Playgroud)

optimization opencv image-processing objective-c ios

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

ReactiveCocoa的ClangFormat样式

我正在使用ClangFormat.

我希望从中更新我的ReactiveCocoa代码的样式

   [[self.myService indexCase] subscribeNext:^(id response) {
        DDLogDebug(@"response : %@", response);
    }
        error:^(NSError *error) {
            [self.dataManager sendError:error];
        }];
Run Code Online (Sandbox Code Playgroud)

对此

  [[self.myService indexCase]
     subscribeNext:^(id response) {
        DDLogDebug(@"response : %@", response);
     } error:^(NSError *error) {
            [self.dataManager sendError:error];
        }];
Run Code Online (Sandbox Code Playgroud)

我应该考虑使用什么ClangFormat属性来实现这一目标?


我当前的.clang-format档案:

BasedOnStyle: WebKit
AlignTrailingComments: true
AllowShortFunctionsOnASingleLine: false
AllowShortIfStatementsOnASingleLine: true
BreakBeforeBraces: Linux
ColumnLimit: 120
IndentCaseLabels: true
IndentWidth: 4
KeepEmptyLinesAtTheStartOfBlocks: false
MaxEmptyLinesToKeep: 2
ObjCSpaceAfterProperty: true
ObjCSpaceBeforeProtocolList: true
PointerBindsToType: false
SpacesBeforeTrailingComments: 1
TabWidth: 4
UseTab: Never
Run Code Online (Sandbox Code Playgroud)

static-analysis objective-c clang reactive-cocoa clang-format

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

在Interface Builder中,自动布局"添加新约束"不是交互式的

我正在更新iOS 7的应用程序,并决定使用自动布局.

当我尝试向以下屏幕截图中的任何元素添加约束时:

在此输入图像描述

View Controller,Table View,View,Table View Section,Table View Cell,Content View,Label.

我无法做如此,因为没有项目Add New Constraints 面板(如下图所示)是交互式的.(除了Update Frames项目)

在此输入图像描述

在我试图解决这个问题时,我已经研究过了

"使用自动布局时,您可能无法再直接设置视图的框架.此线条无效,或者可能直接干扰自动布局的操作."

"使用自动布局设置滚动视图的contentSize时,内容大小会自动从您在其子视图上设置的约束中获得."

当我更新ViewContoller代码以适应此建议时,问题仍然存在.

xcode objective-c autolayout ios7

7
推荐指数
2
解决办法
5431
查看次数

子类化时转发声明vs #import

我有MyClassA一个类型的属性MyClassB

//
//  MyClassA.h
//  

@interface MyClassA : NSObject

@property (strong, nonatomic, readonly) MyClassB *myClassB;

@end
Run Code Online (Sandbox Code Playgroud)

MyClassB有房产myString.

//
//  MyClassB.h
//  

@interface MyClassB : NSObject

@property (copy, nonatomic, readonly) NSString *myString;

@end
Run Code Online (Sandbox Code Playgroud)

我有MyClassC需要访问myString它的实现.

我是不是该 -

一)正向声明MyClassBMyClassA.h,并#import "MyClassB.h"MyClassC.m

要么

b)#import MyClassB.hinMyClassA.h

import objective-c include forward-declaration

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

SELECT INTO多个@variables MySQL

我希望将一个参数的结果存储SELECT到多个变量中.

我知道此查询的结果将始终6 ints从6个不同的行返回.

我尝试使用以下代码:

SELECT id INTO @photo1, @photo2, @photo3, @photo4, @photo5, @photo6 
FROM album WHERE uploaded = @time AND scene_id = NEW.id;
Run Code Online (Sandbox Code Playgroud)

album是一张桌子. uploaded是一个领域album. scene_id是一个领域album. idPRIMARY_KEYalbum.

我已经读过变量的数量必须等于字段的数量.在上述陈述中显然不是这种情况.

考虑到这一点,我将如何克服这个问题?

此代码正在MySQL触发器中使用.

编辑:根据请求的相关表模式:

person   -- name of table   
id | approved -- id is PK

album   -- name of table
id | uploaded | scene_id  -- id is PK
Run Code Online (Sandbox Code Playgroud)

触发器在approved从0变为1时触发

mysql sql database

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

iPhone在Z轴上时的UIImage方向

我正在使用类似于此博客http://blog.logichigh.com/2008/06/05/uiimage-fix/上的代码, 在我用iPhone相机拍摄后旋转图像.我在用AVFoundation.

我在这里提取了相关代码:

    case UIImageOrientationUp: //EXIF = 1  
        transform = CGAffineTransformIdentity;  
        break;  

    case UIImageOrientationUpMirrored: //EXIF = 2  
        transform = CGAffineTransformMakeTranslation(imageSize.width, 0.0);  
        transform = CGAffineTransformScale(transform, -1.0, 1.0);  
        break;  

    case UIImageOrientationDown: //EXIF = 3  
        transform = CGAffineTransformMakeTranslation(imageSize.width, imageSize.height);  
        transform = CGAffineTransformRotate(transform, M_PI);  
        break;  

    case UIImageOrientationDownMirrored: //EXIF = 4  
        transform = CGAffineTransformMakeTranslation(0.0, imageSize.height);  
        transform = CGAffineTransformScale(transform, 1.0, -1.0);  
        break;  

    case UIImageOrientationLeftMirrored: //EXIF = 5  
        boundHeight = bounds.size.height;  
        bounds.size.height = bounds.size.width;  
        bounds.size.width = boundHeight;  
        transform = CGAffineTransformMakeTranslation(imageSize.height, imageSize.width);  
        transform = …
Run Code Online (Sandbox Code Playgroud)

iphone core-graphics avfoundation uiimage ios

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

VIPER中UIView动画代码放置在哪里?

根据VIPER设计模式,UIView动画代码应该放在哪里?

它应该在视图中还是在演示者中?

笔记:

我有一个CustomView,一旦触摸,我希望在屏幕上移动。

CustomView添加到我的屏幕中ViewController

architecture objective-c ios viper-architecture

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

iOS应用程序VIPER架构 - 有多少数据管理器?

我在VIPER建筑模式的背景下寻找这个问题的答案-

如果你有一个可与既有的应用程序web apidatabase多少dataManagers,你应该有一个,两个或三个?

案件

一个) dataManager

b) APIDataManagerLocalDataManager

c) dataManager,APIDataManagerLocalDataManager

在哪里

A)interactor一个单一的会谈dataManager,讨论对您的任何服务(远程或本地).

B)interactor知道的区别localremote信息-并呼吁无论是APIDataManagerLocalDataManager,分别跟远程和本地服务.

c)interactor与将军的唯一对话dataManager,将军dataManager随后与APIDataManager和将会谈LocalDataManager

编辑

可能没有确定的解决方案.但任何输入都将非常感激.

architecture ios viper-architecture

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