小编JOM*_*JOM的帖子

如何确定NSDate(包括时间)是否已通过

如何确定NSDate(包括时间)是否已通过?我需要基本上将今天的日期与数据库中的日期进行比较,但是我很难过.

iphone cocoa-touch objective-c nsdate

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

有没有办法确定iPhone是否正在漫游?

我正在开发一个iPhone应用程序,并且非常想确定设备是否正在漫游,以便我可以智能地避免在用户家庭网络之外花费昂贵的连接.

我写的应用程序是用于越狱手机,但如果可能的话,我更愿意使用标准的SDK.

这是我已经找到的:

1. Apple SDK: 在Apple文档中,我在Apple的SCNetworkReachability API中找到了承诺.通过API,您可以访问WIFI或手机网络,当前是否建立了网络连接等.但是,搜索SCNetworkReachability API参考pdf以获取"漫游"或"漫游"两者均为nil.他们的示例代码也是如此.

2.越狱iPhone FS的Grep: 首选项 - >常规 - >网络选项卡是用户可以打开或关闭漫游的地方.查看plist文件("/Applications/Preferences/Network.plist"),我能够找到以下引用:

        PostNotification = "com.apple.commcenter.InternationalRoamingEDGE.changed";
        cell = PSSwitchCell;
        default = 1;
        defaults = "com.apple.commcenter";
        key = InternationalRoamingEDGE;
        label = "EDGE_ROAMING_TOGGLE";
        requiredCapabilities =             (
            telephony
        );
Run Code Online (Sandbox Code Playgroud)

这当然是一个领先者,因为看起来我可以注册用户更改了InternationalRoaming设置的通知.尽管如此,我不确定如何将其变成他们实际上正在漫游的知识.

3.检查SpringBoard的类转储源: 我使用class-dump转储了SpringBoard的.我无法找到任何"漫游"或"漫游"的引用

4.显然我开始在SO检查这个: 找不到任何相关的东西.

进一步的步骤:有人在这里有任何建议吗?我知道这是可能的.但苹果显然很难找到它.我非常怀疑,如果不使用私有框架,这是可能的.(例如CoreTelephony).由于这是一个越狱的应用程序,我可能会使用SpringBoard中的注入代码来屏幕抓取运营商名称,但我真的更愿意不去那条路线.任何建议都非常感谢.谢谢.

iphone jailbreak roaming-profile core-telephony

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

if(self = [super init])vs if((self = [super init]))

刚刚进行代码审查并开始怀疑:

我想if (self = [super init])检查分配[super init]变量的返回值是否self成功(操作值).因此(self = nil)实际上是TRUE.

我认为if ((self = [super init]))检查self赋值后的值是什么(变量的值).这样((self = nil))就可以了FALSE.

在初始化自己的类时,哪一个是正确的使用方法?Apple文档使用前者(例如这里),我现在正在使用它的样式.

iphone initialization class objective-c

21
推荐指数
2
解决办法
5986
查看次数

Apple在iPhone应用程序上要求iPad截图(在iTunes Connect中)?

快速而有希望的明显问题.我正在设置要提交的应用,而我正在iTunes Connect中工作.它要求我提供iPhone和iPad屏幕截图.如果您的构建仅适用于iPhone(例如我已将设备设置为iPhone的目标),是否可以省略iPad屏幕截图?在iPad上以2x移动方式运行我的应用程序的屏幕截图似乎是多余的.

提前感谢您的想法.

itunesconnect itunes ios

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

19
推荐指数
2
解决办法
8209
查看次数

NSClassFromString返回nil

为什么要NSClassFromString回来nil?根据定义,它必须返回类名.我该如何处理纠正这个问题?我需要从string实例化一个类,并使用创建的实例调用类中的方法.

这是我的代码的样子:

id myclass = [[NSClassFromString(@"Class_from_String") alloc] init];
[myclass method_from_class];
Run Code Online (Sandbox Code Playgroud)

但是这个method_from_class功能没有被调用,控制也没有进入.我的代码没有错误.知道如何在Objective-C中解决这个问题吗?

class objective-c instance

18
推荐指数
3
解决办法
3万
查看次数

iOS - 找不到_OBJC_CLASS _ $ _ CTTelephonyNetworkInfo?

我使用以下代码获取有关我的iPhone的网络信息 -

#import <CoreTelephony/CTTelephonyNetworkInfo.h>
#import <CoreTelephony/CTCarrier.h>


CTTelephonyNetworkInfo *netInfo = [[CTTelephonyNetworkInfo alloc] init];
CTCarrier *carrier = [netInfo subscriberCellularProvider];
NSString *osVersion = [[UIDevice currentDevice] systemVersion];
Run Code Online (Sandbox Code Playgroud)

但我得到错误 -

Undefined symbols for architecture armv7:
 "_OBJC_CLASS_$_CTTelephonyNetworkInfo", referenced from:
  objc-class-ref in MyClass.o
ld: symbol(s) not found for architecture armv7
Run Code Online (Sandbox Code Playgroud)

该类不是iOS SDK的一部分吗?我究竟做错了什么?

ios core-telephony

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

更改UIImageView大小以使图像与AutoLayout匹配

我想改变我的UIImageView高度/宽度以匹配我从相册中选择的图像,我在这里找到了一个代码片段.

-(CGRect)frameForImage:(UIImage *)imgs inImageViewAspectFit:(UIImageView *)imagev
{
  float imageRatio = imgs.size.width / imgs.size.height;
  float viewRatio = imagev.frame.size.width / imagev.frame.size.height;
  if(imageRatio < viewRatio)
  {
    float scale = imagev.frame.size.height / imgs.size.height;
    float width = scale * imgs.size.width;
    float topLeftX = (imagev.frame.size.width - width) * 0.5;
    NSLog(@"image after aspect fit: width=%f",width);
    imagev.frame = CGRectMake(topLeftX, 0, width, imagev.frame.size.height);
    return CGRectMake(topLeftX, 0, width, imagev.frame.size.height);
  }
  else
  {
    float scale = imagev.frame.size.width / imgs.size.width;
    float height = scale * imgs.size.height;
    float topLeftY = (imagev.frame.size.height - height) * …
Run Code Online (Sandbox Code Playgroud)

uiimageview ios autolayout ios6

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

如何在iOS中获取照片的原始文件名?

我目前正在开发一个iPad应用程序,用户将在文本字段中输入照片文件名(作为现场笔记的一部分),之后他们会将照片导入iPad的照片库.应用程序将使用ALAssetsLibrary访问库并枚举照片,查找具有在字段注释中输入的文件名的照片.这将是拍摄它的相机给照片的文件名.例如"DSC_0019.JPG".

这不可能吗?

我注意到,如果我将相机中的照片导入iPad,然后在我的Mac上打开iPhoto并将iPad作为相机查看,我可以"获取有关iPad上保存的图像的信息"并查看原始文件名我正在寻找对于.但是,这不包含在iPad上的元数据中.

任何帮助将不胜感激.

这是我的代码:

(在使用CFDictionary时,几乎所有东西都是null,除了没有我正在寻找的Exif键)

- (void)viewDidLoad
{
    [super viewDidLoad];

    //start activity animation
    [self.activity setHidden:NO];
    [self.activity startAnimating];

    //init our arrays
    autoAssignedAssets  = [[NSMutableArray alloc] init];
    unAssignedRecords   = [[NSMutableArray alloc] init];
    unAssignedAssets    = [[NSMutableArray alloc] init];

    //setup the library
    ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init];



    //[ BLOCK ] => assetEnumerator
    //
    void (^assetEnumerator)(ALAsset *, NSUInteger, BOOL *) = ^(ALAsset *result, NSUInteger index, BOOL *stop) {

        if (result != nil) {

            if ([[result valueForProperty:ALAssetPropertyType] isEqualToString:ALAssetTypePhoto] ) {


                //=================================================================

                ALAssetRepresentation* representation = …
Run Code Online (Sandbox Code Playgroud)

objective-c ipad ios alassetslibrary

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

使用多个CLLocationManager实例是否存在任何性能损失

我的应用程序中至少有两个控制器当前使用自己的CLLocationManager实例.我很好奇但是如果使用多个实例实际上会给手机增加额外的负担 - 超出了不同实例的额外内存.

iPhone会多次ping GPS硬件,还是使用某种调度方式,以便硬件被抽象出来并转发给所有听众?我正要编写自己的抽象层来处理多个观察者,但想检查是否有任何知识表明它没有必要.

iphone core-location cllocationmanager

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