小编Ort*_*ntz的帖子

对许多包含数字的NSArray进行排序

我有一个NSArray,其中填充了NSMutableArray中的对象.这些对象中的大多数具有整数值,如"1","2","3","4","5",有时会有"home","far left"或"far right"这样的名称.我正在尝试使用sortedArrayUsingSelector在Objective C中对此数组进行排序:@selector(compare :)在数组中少于10个项目时工作正常.但是当它还有更多我开始得到"1","10","11","12","2","3"类型的东西.非常感激任何的帮助.代码不应返回任何内容.它只需要排序并继续前进.

原始代码:

presetNamesSort = [[[NSMutableArray alloc]init]retain];

presetNamesSort = [presetNames sortedArrayUsingSelector:@selector(compare:)];
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch objective-c nsarray ios

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

如何构建类似iOS的设置模块?

我是iPhone开发的新手.Currentlly我正在为我的应用程序设置一个选项模块.用户应该能够编辑一些首选项.

我的第一个方法是有一些文本字段.但我真的很喜欢iOS如何处理编辑首选项.有某种标签.单击该标签将打开另一个视图,其中包含要编辑的字段.我希望你明白我的意思.

iOS如何实现这一目标?那是表格视图吗?

我的意思是这种设计

在此输入图像描述

iphone xcode interface-builder inappsettingskit

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

使用虚线路径密钥字符串访问Ruby哈希

Rails I18n库将YAML文件转换为可通过使用t()函数的虚线路径调用访问的数据结构.

t('one.two.three.four')
Run Code Online (Sandbox Code Playgroud)

有没有人知道如何用Ruby Hash做到这一点?或者只能直接通过YAML对象?

ruby hash yaml ruby-on-rails key

14
推荐指数
3
解决办法
8165
查看次数

在UINavigationController中仅支持一个视图的格局

我有一个导航控制器,它有几个视图控制器.除了一个只支持横向的特殊视图控制器外,我需要支持所有视图控制器的所有方向.此特殊视图控制器显示在导航堆栈的中间.我做了很多研究,但找不到任何好的解决方案.以下是我阅读和尝试过的链接.

http://www.iphonedevsdk.com/forum/iphone-sdk-development/3219-force-landscape-mode-one-view.html#post60435

如何将屏幕旋转到风景?

如何从纵向模式自动旋转到横向模式? iPhone - 仅在一个视图控制器上允许横向显示 http://goodliffe.blogspot.com/2009/12/iphone-forcing-uiview-to-reorientate.html

接下来我将尝试替换导航控制器presentModalViewController以显示特殊视图控制器.然后我将在特殊视图控制器内创建一个新的导航视图控制器来推送后续的视图控制器.

如果有人有更好的想法,请告诉我.非常感谢!

更新:我已成功地使用我上述方法:更换pushViewControllerpresentModalViewController,并创建一个新的导航控制器.

iphone cocoa-touch uinavigationcontroller uiinterfaceorientation ios

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

iOS模拟器是否使用多个内核?

现在iPad 2配备了两个CPU内核,线程问题的调试将比以往更加重要.现在我想知道:iOS模拟器实际上是否使用Mac上的多核?

iphone multicore ipad ios ios-simulator

13
推荐指数
2
解决办法
2395
查看次数

使用加速度计检测压力强度

昨天,在关于iPad 2的新Garageband的演示中,Apple演示了一个有趣的功能:使用加速度计检测分接压力.(参见Garageband页面上的鼓部分.)

我想知道如果iPad平放在桌子上,那该怎么办呢.没有运动,没有可测量的加速度,没有?

iphone accelerometer uikit ipad ios

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

如何从 Core Graphics 生成动态明暗模式 UIImage?

iOS 13 引入UIImage了自动采用当前UIUserInterfaceStyle模式(又名亮或暗模式)的实例。但是,似乎只有从命名或系统映像(imageNamed:inBundle:withConfiguration:systemImageNamed:withConfiguration:)构建此类映像的方法。

有没有办法UIImage从 Core Graphics动态生成通用明暗模式(例如使用两个CGImages 或使用 UIGraphicsImageRenderer)?

我没有看到任何 API,但也许我错了。

uikit uiimage ios ios-darkmode uiuserinterfacestyle

13
推荐指数
2
解决办法
2065
查看次数

如何检索所有NSNotificationCenter观察者?

我想检索给定通知名称的观察者(对象和选择器)列表.我知道没有正式的API.我也知道我可以继承NSNotificationCenter来实现这一目标.但有时候这不是一个可行的选择,因为NSNotificationCenter的使用遍布整个代码甚至二进制框架.

所以我正在寻找一种非官方/私人的方式来做到这一点.(因为它只是关于调试,没关系.)

cocoa cocoa-touch nsnotificationcenter ios

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

CLLocation返回负速度

我正在开始一个使用coreLocation和mapkit框架的新应用程序.

我的问题是试图让当前的速度总是给我一个负值,我把我的iPhone带到一个有3g信号的地方并没关系,location.speed值总是-1.

这是重要的代码:

#define kRequiredAccuracy 1500.0 //meters
#define kMaxAge 60.0 //seconds
Run Code Online (Sandbox Code Playgroud)

在init方法中:

self.locationManager=[[CLLocationManager alloc] init];
self.locationManager.delegate=self;
self.locationManager.desiredAccuracy=kCLLocationAccuracyNearestTenMeters;
Run Code Online (Sandbox Code Playgroud)

然后didUpdateToLocation:

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{

    NSTimeInterval ageInSeconds = [newLocation.timestamp timeIntervalSinceNow];
    NSLog(@"Location: %@", [newLocation description]);

    if( newLocation.horizontalAccuracy > kRequiredAccuracy || fabs(ageInSeconds) > kMaxAge )
    {
        NSLog(@"inacurate position");
        [self.delegate inacuratePosition];

    }
    else {

    [self.delegate locationUpdate:newLocation andOldLocation:oldLocation];
    location=newLocation.coordinate;


    }


    if(tracking)
    {   
    [self updatePosition];
    }
    if(firstTime)
    {
        [self placeStartMark];
        firstTime=FALSE;
    }



}
Run Code Online (Sandbox Code Playgroud)

最后在我正在实现协议的视图控制器中:

- (void)locationUpdate:(CLLocation *)newLocation andOldLocation:(CLLocation*)oldLocation{

    double speed = [newLocation speed] *3.6;



    double …
Run Code Online (Sandbox Code Playgroud)

iphone geolocation core-location mapkit ios

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

在MKUserTrackingModeFollowWithHeading地图模式下设置MKMapCamera时奇怪的MKMapView行为

我在使用MKMapView和MKMapCamera时注意到了奇怪的行为.我需要实现一些Apple Maps应用程序的标准行为.基本上,我需要的是当Map View的用户跟踪模式设置为MKUserTrackingModeFollowWithHeading时能够在2D和3D模式之间切换.

目前,我的解决方案在userTrackingMode设置为MKUserTrackingModeNone时工作正常,但它在其他模式下执行奇怪的动画(无论我使用setCamera:动画:是或否)都会发生这种情况.当我在设置new之前和之后记录相机参数时,唯一的区别是我的音高变化.

另一个问题是改变摄像机的高度以编程方式放大或缩小.我试图在IBAction方法中使用捏合或缩小手势来模仿缩放.在followWithHeadingMode中,地图始终返回"默认"缩放级别(摄像机的高度),而在其他模式下效果很好.

我启动了示例项目来检查发生了什么,这是我的单视图应用程序的视图控制器,带有地图视图,其中出现问题:

#import "CCViewController.h"

@interface CCViewController ()
@end

@implementation CCViewController

- (void)viewDidLoad{
    [super viewDidLoad];
}

- (void)setUpMap{
    [self.mapView setShowsUserLocation: YES];
}

- (void)viewDidAppear:(BOOL)animated{
    [self setUpMap];
}

- (IBAction)mapModeSwitchClicked:(id)sender {
    MKMapCamera *newCamera = [MKMapCamera camera];
    newCamera.centerCoordinate = self.mapView.camera.centerCoordinate;
    newCamera.heading = self.mapView.camera.heading;
    newCamera.altitude = self.mapView.camera.altitude;

    if(!self.mapView.camera.pitch){
        newCamera.pitch = 50;
        self.mapModeSwitch.title = @"2D";
    }
    else{
        newCamera.pitch = 0;
        self.mapModeSwitch.title = @"3D";
    }

    [self.mapView setCamera:newCamera animated:YES];
}

- (IBAction)locateMeButtonClicked:(id)sender {

        if(self.mapView.userTrackingMode != MKUserTrackingModeFollowWithHeading)
            [self.mapView …
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch mapkit mkmapview ios

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