小编Man*_*lio的帖子

卸载应用程序时,我的UIPasteboard上的持久性仍然有效.为什么?

我使用UIPasteboard该类来使用具有多个应用程序的数据.该文档说,卸载创建者应用程序时会删除持久性.我做两个应用程序,一个用于复制,另一个用于过去:

创作者应用:

-(IBAction)paste:(id)sender{
    UIPasteboard* pb = [UIPasteboard pasteboardWithName:@"mytext" create:YES];
    tv_pasting.text = pb.string;

}
Run Code Online (Sandbox Code Playgroud)

读者应用:

-(IBAction)copy:(id)sender{

    UIPasteboard* pb = [UIPasteboard pasteboardWithName:@"mytext" create:YES];
    pb.persistent = YES;
    pb.string = tf_copy.text;
}
Run Code Online (Sandbox Code Playgroud)

我在我的第一个应用程序中进行了文本复制,我粘贴在我的第二个应用程序上,文本被复制,一切都很好.之后,我卸载了我的两个应用程序并重新安装了阅读器应用程序 我粘贴...并且旧版本仍然可用.为什么?

objective-c uipasteboard ios

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

QTMovieCurrentSizeAttribute和QTMovieSizeDidChangeNotification替换

有谁知道更换旧的QTMovieCurrentSizeAttributeQTMovieSizeDidChangeNotification任务的正确方法?我正在尝试清除旧的弃用代码.

我发现这QTMovieNaturalSizeDidChangeNotification不是替代品QTMovieSizeDidChangeNotification.同样QTMovieNaturalSizeAttribute不是替代品QTMovieCurrentSizeAttribute.Natural Size指的QTMovie是原始分辨率,同时Current Size指的QTMovie是显示a的分辨率(这也可能是电影被解码的分辨率,可以从原生调整大小).例如,如果源是变形的或具有非方形像素,则s NaturalCurrent Sizes将不相同.在QuickTime 7 Player的Movie Inspector窗口中很容易看出差异.

就像我所知,QuickTime X允许多个视图相同QTMovie,因此Current Size需要用新的东西替换.(也许Current Size功能被移入QTMovieView?或解码器查询?)任何人都可以向我推荐新方式的文档或示例代码吗?

电影检查器窗口的任何示例代码已经更新以显示,Natural并且Current ('Actual') Sizes不使用已弃用的代码,这将是理想的.到目前为止,这一直非常令人困惑.

quicktime qtkit

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

出口骨头搅拌机

我有一个用Blender创建的简单骨架网格物体,我试图将其导出以便在OpenGL中渲染它.

我的问题是:为了分析网格(特别是骨架/骨骼)并在C/C++程序中渲染它,最简单的导出格式什么?

我管理(没有太多问题)在网格中渲染对象,所以这不是问题.我搜索了很多,我尝试了不同的格式,但实际上我遇到了所有这些问题的困难..obj根据我的研究,使用它会很棒,它不支持骨骼.

因此,我应该使用什么格式(轻松)解析骨骼?

graphics blender skeletal-mesh

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

添加按钮到UITableViewCell

我想在一个按钮中添加一个按钮UITableViewCell.这是我的代码:`

if (indexPath.row==2) {
    UIButton *scanQRCodeButton = [[UIButton alloc]init];

    scanQRCodeButton.frame = CGRectMake(0.0f, 5.0f, 320.0f, 44.0f);
    scanQRCodeButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    scanQRCodeButton.backgroundColor = [UIColor redColor];
    [scanQRCodeButton setTitle:@"Hello" forState:UIControlStateNormal];

    [cell addSubview:scanQRCodeButton];
}`
Run Code Online (Sandbox Code Playgroud)

现在,当我运行应用程序时,我只看到一个空行!有任何想法吗 ?

iphone objective-c uibutton uitableview

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

UITextField在触摸时崩溃

UITextField触摸默认类型时,我们的ios应用程序崩溃.有另一个uitextfield是numpad,它工作正常.

崩溃只发生在ios 5.0.1和ios 4.x上运行正常.

UITextField是使用界面构建器创建的,我没有为它添加任何委托.

该项目是在4.0.2上创建的,我也在4.2上测试了同一个项目.

如果我创建一个新项目并且只是放入UITextField其中就没有问题.

不知何故,我的项目中的某些东西导致UITextField崩溃,我不知道如何调试它.

崩溃日志如下:

(gdb) bt
#0  0x33fa2fdc in CFRetain ()
#1  0x37991db6 in ___init_block_invoke_2 ()
#2  0x36c8e7ea in _dispatch_barrier_sync_f_invoke ()
#3  0x36c8e65a in dispatch_barrier_sync_f$VARIANT$up ()
#4  0x36c8e28e in dispatch_sync_f$VARIANT$up ()
#5  0x36c8e910 in dispatch_sync$VARIANT$up ()
#6  0x36c90576 in dispatch_once_f$VARIANT$up ()
#7  0x37992706 in CPLoggingAddCustomLogFile ()
#8  0x306ee658 in __MCLoggingInitialize_block_invoke_1 ()
#9  0x36c90576 in dispatch_once_f$VARIANT$up ()
#10 0x306ee6a4 in MCLoggingInitialize ()
#11 0x306ef060 in -[MCProfileConnection _init] ()
#12 …
Run Code Online (Sandbox Code Playgroud)

crash objective-c uitextfield ios

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

翻译期间改变图像

如何在翻译过程中使用一组图像(即在img1和img2之间切换)更改myLayer.contents?谢谢!

UIImage *myImage = [UIImage imageNamed:@"img1.png"];
CALayer *myLayer = [CALayer layer];
myLayer.contents = (id)myImage.CGImage;
myLayer.Position = CGPointMake(0,0);
myLayer.Bounds=CGRectMake(0.0, 0.0, 50, 50);
[self.view.layer addSublayer:myLayer];

//translation1
CGPoint startPt = CGPointMake(10,10);
CGPoint endPt = CGPointMake(100,100);    
CABasicAnimation *transl1 = [CABasicAnimation animationWithKeyPath:@"position"];
transl1.removedOnCompletion = FALSE;
transl1.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear];
transl1.fromValue = [NSValue valueWithCGPoint:startPt];
transl1.toValue = [NSValue valueWithCGPoint:endPt];
transl1.duration = 3;
transl1.fillMode = kCAFillModeForwards;
transl1.beginTime = 0;
[myLayer addAnimation: transl1 forKey:  nil];
Run Code Online (Sandbox Code Playgroud)

core-animation objective-c cabasicanimation ios

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

显示NSPlaceholderstring泄漏的工具

我正在尝试减少我的应用程序中的内存泄漏,所以我使用仪器来查找所有泄漏.我设法删除了几乎所有的泄漏,除了一个非常烦人的泄漏.

仪器告诉我,我有很多NSPlaceholderstring泄漏.产生泄漏的代码(根据工具)是:

if (nil == storedHash) 
{
  NSString *description = [[NSString alloc] initWithFormat:@"1 = %@ 2= %d", uId, service];
  self.storedHash = description; // This line is the leak according to instruments

  [description release];
  description = nil;
}

return storedHash
Run Code Online (Sandbox Code Playgroud)

storedHash定义如下:

@property(copy) NSString* storedHash;
Run Code Online (Sandbox Code Playgroud)

我尝试了我能想到的一切:

  • 我使用retain而不是copy
  • 我使用了NSString的自动释放分配(stringWithFormat)
  • 我尝试用自动释放池包装代码

以上都没有改变泄漏.(在某些情况下,泄漏的类型会发生变化,但仍然存在泄漏)

想法有人吗?

iphone memory-leaks instruments

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

UINavigationController后退按钮上的自定义过渡动画

我在UINavigationController中进行了自定义转换,我使用的代码如下:

SecondView *newView = [[SecondView alloc] initWithNibName:nil bundle:nil];
[UIView beginAnimtaions:nil context:nil];
[UIView setAnimationDuration:1.0];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlDown];
[self.navigationcontroller pushViewController:newView animated:NO];
[UIView commitAntimations];
[newView release];
Run Code Online (Sandbox Code Playgroud)

但是这个过渡动画仅适用于Forw​​ard,我可以在Back上应用它吗?

谢谢

transactions objective-c navigationcontroller

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

iOS上的圆形按钮

是否可以创建如下图所示的两个按钮?看起来你应该使用UIButton或UIImageView但是如果我点击区域1,它仍然可以点击按钮1.当我点击区域1时,按钮2应该被触发!

在此输入图像描述

iphone geometry objective-c button ios

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

无法读取kABPersonPhoneProperty

我正面临一个(奇怪的)问题:我想检索一个联系人的电话号码,但由于某种原因,我无法这样做.

我用了

ABAddressBookRef addressBook = ABAddressBookCreate();
NSArray *contacts = (NSArray*) ABAddressBookCopyArrayOfAllPeople(addressBook);
CFRelease(addressBook);
Run Code Online (Sandbox Code Playgroud)

获取所有联系人的数组.然后我想用

ABMultiValueRef ref = ABRecordCopyValue([contacts objectAtIndex:i], kABPersonPhoneProperty);

NSLog(@"%d",ref==NULL);
Run Code Online (Sandbox Code Playgroud)

ABRecordCopyValue总是返回nil...
请注意,我能够检索有关联系人的其他信息:例如,提取名称可以正常使用

CFStringRef name = ABRecordCopyCompositeName([contacts objectAtIndex:i]);
Run Code Online (Sandbox Code Playgroud)


愿有人向我解释我做错了什么吗?我正在使用Snow Leopard和Xcode 4.2,我正在为iOS 4.0开发......

编辑:我找到了一个解决方案:而不是使用

ABRecordCopyValue([contacts objectAtIndex:i], kABPersonPhoneProperty);
Run Code Online (Sandbox Code Playgroud)

我用了

ABRecordID idRec = ABRecordGetRecordID([contacts objectAtIndex:i]);
ABMultiValueRef ref = ABRecordCopyValue(ABAddressBookGetPersonWithRecordID(addressBook, idRec), kABPersonPhoneProperty);
Run Code Online (Sandbox Code Playgroud)

但是我必须保持对addressBook(不要释放它)的引用有效,因此EricS建议的解决方案似乎更好.

cocoa objective-c abaddressbook ios

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