小编Bhu*_*hta的帖子

UIActivityViewController在iOS 8 iPad上崩溃

我目前正在使用Xcode 6(Beta 6)测试我的应用程序.UIActivityViewController可与iPhone设备和模拟器配合使用,但与iPad模拟器和设备(iOS 8)崩溃并带有以下日志

Terminating app due to uncaught exception 'NSGenericException', 
reason: 'UIPopoverPresentationController 
(<_UIAlertControllerActionSheetRegularPresentationController: 0x7fc7a874bd90>) 
should have a non-nil sourceView or barButtonItem set before the presentation occurs.
Run Code Online (Sandbox Code Playgroud)

我正在为iOS 7和iOS 8使用以下iPhone和iPad代码

NSData *myData = [NSData dataWithContentsOfFile:_filename];
NSArray *activityItems = [NSArray arrayWithObjects:myData, nil];
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:nil applicationActivities:nil];
activityViewController.excludedActivityTypes = @[UIActivityTypeCopyToPasteboard];
[self presentViewController:activityViewController animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)

我也得到了一个类似的崩溃我的其他应用程序.你能指导我吗?iOS 8中的UIActivityViewController有什么变化吗?我查了但是我没有找到任何关于此的内容

objective-c ios uiactivityviewcontroller ios8

279
推荐指数
11
解决办法
9万
查看次数

什么是Xcode 6中的Storyboard中的"约束到边距"

我正在使用自动布局和约束,并发现Constrain to marginsXCode 6中有一个选项,它在XCode 5中不存在,默认情况下会被选中.

我创建了一个测试项目,然后UITableView在ViewController上添加了一个框架,其框架设置为与视图相同的大小并添加了约束

XCode 6 你可以看到这里,即使tableview具有与视图相同的帧,XCode建议添加-16作为约束,而XCode 5会建议添加间距0.

使用Constrain进行保证金检查

现在,当您取消选中"Constrain to margin"选项时,它的行为与XCode 5相同,并建议将0添加为约束

使用Constrain来保证UnChecked

另外,我发现一旦我用Constrain添加约束来检查边距,我就不能再在XCode 5中打开storyboard文件了,所以它绝对是XCode 6中的新东西.

希望我能够正确地解释我的问题.我想了解"限制边际"实际上是什么以及何时应该而且不应该使用它.如果它非常简单明了,我会道歉.

编辑

我在这里讨论了一些关于布局边距的内容,我想知道它是否与此相关.

xcode storyboard ios autolayout xcode6

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

新iPhone 6和6+的图像分辨率,@ 3x支持增加?

我已经看过上几篇文章讨论像一个在这里这里有关新的iPhone将使用@ 3倍的图像显示的图像分辨率.这是真的吗?

那么这是否意味着我们必须保留三张图片?比方说我有50 X 50的图像,我是否需要保留3张图像以优化新iPhone的外观?

  • 正常(50 X 50)
  • @ 2x - Retina(100 X 100)
  • @ 3x - Retina HD(150 X 150)

或者新款手机只使用@ 2x图像而且没有像@ 3x那样的东西?

我已经通过制作示例项目进行测试,并且所有模拟器似乎都使用@ 3x图像,这很令人困惑.

编辑

这是一些更多的信息

  • 3GS(163 ppi所以使用普通)
  • 4,4s,5和5s(326 ppi所以我们使用@ 2x)
  • 6(326 ppi所以它似乎会使用@ 2x)
  • 6加(这里有401 ppi的混乱)

编辑

基于Tsob和nitin给出的答案,我在项目中添加了@ 3x图像.

信息编辑

我看到很少有用户对iPhone 6使用@ 2x图像的原因感到困惑,即使它具有更高的分辨率,原因是

iPhone 6可能具有不同的分辨率,但具有相同的每像素密度(PPI)

  • 分辨率涉及绝对像素数.
  • 密度(又称每英寸像素数 - PPI)涉及每英寸像素的相对数量,这与iPhone 6和之前的iPhone相同,但在iPhone 6 plus中则不同.

在这个帖子中查看更多相关信息

因此,iPhone 6使用与iPhone 4,5和5S相同的@ 2x图像,因为它具有相同的PPI,而iPhone 6 plus使用@ 3x.

resolution ios iphone-6 iphone-6-plus

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

Main.storyboard文档需要Xcode 8.0或更高版本

我下载了Xcode beta并打开了我现有的项目,看看它是如何与Xcode 8 beta一起工作的(我从Xcode 8打开了Storyboard文件).

现在当我从Xcode 7.3打开我的项目时,我无法打开storyboard文件,它给了我以下错误

此版本不支持以Xcode 8格式保存的文档.使用Xcode 8.0或更高版本打开此文档.

Xcode 7错误 我应该怎么做才能恢复,因为我想继续使用Xcode 7.

在Xcode 8中我被提示选择设备而我选择了iPhone 6S,我认为该部分是以某种方式负责在Xcode 7中打开的故事板文件

xcode objective-c storyboard ios ios10

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

ListView中的TouchableOpacity作为Item仅在TextInput失去焦点后作出反应

我现在正在研究一个由TextInput和ListView组成的搜索组件.它从外部服务器加载其结果并相应地填充ListView.

还有一个关闭搜索组件的TouchableOpacity.

不幸的是,需要两次按下才能获得被调用的TouchableOpacity的onPress回调 - 一个让TextInput失去焦点,一个用来触发回调.但是,如果我按下TouchableOpacity来关闭搜索组件,或者如果我按下"react-native-scrollable-tab-view"组件的其中一个选项卡,它会立即做出反应,TextInput甚至会保持其焦点.

所以,我想知道是否有人知道ListView是否由于其滚动功能而以某种方式消耗了触摸.

textinput scrollview react-native

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

iOS App的背景状态,InActive State和非运行状态有什么区别?

你能解释一下吗?

  1. iOS App的背景状态,InActive State和Not-running状态有什么区别?
  2. Main Bundle和Documents Directory有什么区别?(假设我从app下载了一个文件/资源​​(例如data.plist),那么在哪里可以找到它?在Main Bundle或Documents目录或其他地方?)

谢谢

iphone ios

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

UITextView检测带有editable属性的链接为true

我已经搜索了很多关于如何检测链接的UITextView可编辑属性设置为true,但没有找到任何解决方案.所有解决方案都建议将editable设置为NO,但根据要求我无法设置editable NO.

objective-c ios

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

如果用户使用非 iOS 帐户,则以编程方式将新日历添加到日历应用程序

如果用户使用任何其他日历帐户(例如 yahoo 或 hotmail),我们是否可以以编程方式将新日历添加到默认日历应用程序,我收到以下错误:

Domain=EKErrorDomain Code=17“该帐户不允许添加或删除日历。”

如果用户使用 icould 或 ios 日历,代码可以完美运行

iphone ios ekeventstore

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

在iOS 7.0中不推荐使用scrollViewTexturedBackgroundColor

+ (UIColor *)scrollViewTexturedBackgroundColor
Run Code Online (Sandbox Code Playgroud)

在iOS 7中不推荐使用我应该使用的方法吗?

deprecated uicolor ios ios7

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

使用LAME将音频文件从.wav转换为MP3时出现问题

我正在尝试使用适用于iOS应用的LAME将Linear PCM音频文件(.wav)转换为MP3。我成功地做到了,除了一个问题,创建的MP3文件比原始的.wav文件小。对于30秒的wav文件,创建的MP3文件为27秒,最后3秒的音频被切掉。在5分钟的音频中,约30秒的音频被截断,生成MP3。

我不太确定是什么引起了这个问题,我已经尝试了一些更改,但没有任何效果。有人可以帮助我,将我推向正确的方向吗?

这是我为此使用的代码。

    int read, write;
    FILE *pcm = fopen([mergeFile cStringUsingEncoding:1], "rb");  //source
    fseek(pcm, 4*1024, SEEK_CUR);                                   //skip file header
    FILE *mp3 = fopen([mp3FilePath cStringUsingEncoding:1], "wb");  //output

    const int PCM_SIZE = 8192;
    const int MP3_SIZE = 8192;
    short int pcm_buffer[PCM_SIZE*2];
    unsigned char mp3_buffer[MP3_SIZE];

    lame_t lame = lame_init();
    lame_set_in_samplerate(lame, 44100);
    lame_set_VBR(lame, vbr_default);
    lame_init_params(lame);

    do {
        read = fread(pcm_buffer, 2*sizeof(short int), PCM_SIZE, pcm);
        NSLog(@"");
        if (read == 0)
            write = lame_encode_flush(lame, mp3_buffer, MP3_SIZE);
        else
            write = lame_encode_buffer_interleaved(lame, pcm_buffer, read, mp3_buffer, MP3_SIZE);



    } …
Run Code Online (Sandbox Code Playgroud)

audio lame audio-converter ios

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