小编bor*_*den的帖子

NSLayoutConstraints是否可以动画?

我试图动画一些视图,以便它们被景观中的巨型键盘阻挡.如果我简单地为框架设置动画,它的效果很好,但是其他人认为这会适得其反,我应该更新NSLayoutConstraints.但是,它们似乎不具有动画效果.有没有人让他们成功地工作?

//heightFromTop is an NSLayoutConstraint referenced from IB
[UIView animateWithDuration:0.25 animations:^{
    self.heightFromTop.constant= 550.f;
}];
Run Code Online (Sandbox Code Playgroud)

结果是立即跳到有问题的高度.

animation ios autolayout

196
推荐指数
4
解决办法
5万
查看次数

什么可能导致P/Invoke参数在传递时出现故障?

这是一个特别在ARM上发生的问题,而不是在x86或x64上.我有这个用户报告的问题,并且能够通过Windows IoT在Raspberry Pi 2上使用UWP重现它.我在使用不匹配的调用约定之前已经看到过这种问题,但是我在P/Invoke声明中指定了Cdecl,我尝试在原生端显式添加__cdecl并获得相同的结果.这是一些信息:

P/Invoke声明(参考):

[DllImport(Constants.DllName, CallingConvention = CallingConvention.Cdecl)]
public static extern FLSliceResult FLEncoder_Finish(FLEncoder* encoder, FLError* outError);
Run Code Online (Sandbox Code Playgroud)

C#结构(参考):

internal unsafe partial struct FLSliceResult
{
    public void* buf;
    private UIntPtr _size;

    public ulong size
    {
        get {
            return _size.ToUInt64();
        }
        set {
            _size = (UIntPtr)value;
        }
    }
}

internal enum FLError
{
    NoError = 0,
    MemoryError,
    OutOfRange,
    InvalidData,
    EncodeError,
    JSONError,
    UnknownValue,
    InternalError,
    NotFound,
    SharedKeysStateError,
}

internal unsafe struct FLEncoder
{
}
Run Code Online (Sandbox Code Playgroud)

C头中的函数(参考)

FLSliceResult FLEncoder_Finish(FLEncoder, FLError*); …
Run Code Online (Sandbox Code Playgroud)

c# windows pinvoke arm uwp

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

Objective-C是否支持#elifdef?

我似乎无法#elifdef在我的iOS项目中工作.如果我这样做:

#ifdef X
const Foo bar[] = { ... };
#else
const Foo bar[] = { ,,, };
#endif
Run Code Online (Sandbox Code Playgroud)

然后顶部的一个(在X下面)突出显示而底部的一个没有突出显示.如果我这样做:

#ifdef W
const Foo bar[] = { ;;; };
#elifdef X
const Foo bar[] = { ... };
#else
const Foo bar[] = { ,,, };
#endif
Run Code Online (Sandbox Code Playgroud)

然后底部的一个(在其他地方)被突出显示而前两个没有.为什么?还有另一种方法我应该这样做吗?我有三个目标,他们都使用相同的m文件.但是,每个目标的常量有点不同,所以我将它们分开.

objective-c c-preprocessor

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

NSParagraphStyle行间距被忽略

一个失败的简单测试:使用一个子视图(UITextView)创建一个新项目并将以下内容放入:

- (void)viewDidLoad
{
    [super viewDidLoad];

    NSMutableParagraphStyle *paragraphStyle = [[NSMutableParagraphStyle alloc] init];
    paragraphStyle.lineHeightMultiple = 50.f;
    paragraphStyle.lineSpacing = 100.f;
    paragraphStyle.minimumLineHeight = 200.f;
    paragraphStyle.maximumLineHeight = 500.f;

    UIFont *font = [UIFont fontWithName:@"AmericanTypewriter" size:24.f];

    self.textView.attributedText = [[NSAttributedString alloc] initWithString:
    @"This is a test.\n Will I pass?" attributes:
    @{NSParagraphStyleAttributeName : paragraphStyle, NSFontAttributeName : font}];
}
Run Code Online (Sandbox Code Playgroud)

行间距与属性不存在时相同.有没有什么能成功地运作?我提出荒谬的数字只是为了表明它不会改变......

objective-c uitextview nsattributedstring ios6

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

定义一个字节的方法很多

我在objective-c中使用哪一个(特别是在iOS上)会有所不同吗?我认为它来自从C和它的类型继承,以及继承从Mac OS,iOS系统是基于类型的,但我不知道我应该使用哪一个:

unsigned char 从......好......编译器?

uint8_t 来自stdint.h

UInt8 来自MacTypes.h

Byte 来自MacTypes.h

Bytef 来自zconf.h

我知道各种defs是出于可移植性的原因,并且使用类似的文字unsigned char并不是一个好的未来想法(大小可能会改变,事情最终会像Windows API一样).我想就如何找到最适合我的用途的一些建议.如果我只是愚蠢的话,还是好舌头鞭挞......

编辑:只是为了更多的信息,如果我想要的东西总是 1字节,我应该使用uint8_t(看起来不会像这样的名字改变)?我想UInt8也不会改变,但我发现UInt32的定义因处理器是否为64位而有所不同.

进一步编辑:当我说字节时,我特别指的是我想要8位.我正在进行像素压缩操作(32位 - > 8位)用于磁盘存储.

byte typedef objective-c ios

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

git - 奇怪的分支合并错误,我不知道如何解决

当我git status,我收到此错误消息:

# On branch master
# Your branch and 'origin/master' have diverged,
# and have 1 and 2 different commits each, respectively.
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#   .gitignore
nothing added to commit but untracked files present (use "git add" to track)
Run Code Online (Sandbox Code Playgroud)

所以我不能拉或推.当我拉我得到这个:

macoss-MacBook-Pro-10:Marketing owner12$ git pull origin master
Password for 'https://genadinik@bitbucket.org': 
From https://bitbucket.org/genadinik/marketing
 * branch            master     -> FETCH_HEAD
error: The following untracked working tree files would …
Run Code Online (Sandbox Code Playgroud)

git git-merge

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

iOS"本地"推送通知

,

我正在寻找一种方法来制作"本地"推送通知.我无法弄清楚我应该怎么做,所以我正在寻求一些帮助.我需要的是:

  • 一种为24小时内未打开应用程序的用户发送通知的方法.(或者说int没有变化)

我真的希望你们中的一个有时间来帮助我,谢谢!

objective-c push-notification ios

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

CGBitmapContextCreate返回NULL

在什么情况下CGBitmapContext无法分配?我有一个表视图,它有多个视图选项.用户可以看到只有预览的小表格单元格,每行一个更大的预览,或每行两个并排预览.前两个渲染得很好,但第三个失败了.CGBitmapContextCreate没有错误消息,只是在我尝试使用它时出现错误(即无效的上下文0x0).

CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
//size is a passed parameter
CGContextRef c = CGBitmapContextCreate(NULL, size.width, size.height, 8, size.width*4, colorSpace, kCGImageAlphaNoneSkipLast);
CGColorSpaceRelease(colorSpace);
Run Code Online (Sandbox Code Playgroud)

我的目标是iOS 5.0,使用5.1构建.工作版和非工作版之间的唯一区别是非工作版本尝试两次(尺寸小,小于100x100). 只有右侧有这个问题(即第二次尝试).第一次尝试仍然有效.

core-graphics cgbitmapcontextcreate ios

11
推荐指数
2
解决办法
4142
查看次数

NSCursor总是重置为Arrow

为什么我不能在鼠标拖动期间让光标停留?一旦我开始拖动,它就会恢复为"箭头"(即使我在启动后将其设置为app delegate中的开放手).

- (void)mouseDown:(NSEvent *)event
{
   [[NSCursor closedHandCursor] push];
}

- (void)mouseUp:(NSEvent *)event
{
   [NSCursor pop];
}
Run Code Online (Sandbox Code Playgroud)

cocoa objective-c nscursor

10
推荐指数
2
解决办法
4371
查看次数

iphone XMPP App运行背景

我使用XMPP框架创建了一个聊天应用程序..当我退出应用程序(进入后台模式)时,我想收到聊天消息..还需要显示图标徽章......我该怎么做?

iphone cocoa-touch xmpp objective-c ios

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