我想启动一个服务器请求,你可以取消.
我的想法是在一个线程中启动请求,以便用户界面不会冻结.因此,您可以通过单击"取消"按钮来终止包括请求在内的整个线程.
使用Android它可以工作:服务器请求在"AsyncTask"和"onReturn()"中启动 - 方法我可以在服务器请求完成后立即做出反应.
如何在iOS上使用Objective-C实现这一点?我的第一次尝试是"NSInvocationOperation".您可以取消操作,但在请求完成且结果可用时很难处理.我认为NSInvocationOperation不是我的问题的解决方案.
你会推荐给我吗?NSThread是我的正确选择吗?
非常感谢你!
Xcode 4.3几天前发布,但Lion只有一个版本:https:
//developer.apple.com/downloads/index.action
Xcode 4.3与Snow Leopard兼容吗?
点击a UIBarButtonItem中的a时UIToolbar,会出现白色发光效果.
是否有可能发射事件以显示此效果?
我不想按下按钮.只应显示效果.我想向用户显示该按钮后面有新内容.
谢谢你的帮助!
我发现很难找到Sync Framework 2.1的条目。我可以使用任何好的教程或示例项目吗?
我的目标是将客户端与.NET 4.5和Microsoft SQL Server 2012 LocalDB与带有Microsoft SQL Server 2012的Windows 2008 R2服务器同步。
我想知道如何在客户端和服务器上编写一个同步提供程序。
是对的,MS SQL Server同步框架的提供程序不支持“更改跟踪”?我必须编写自己的提供程序吗?管理员如何管理服务器的“元数据”?
非常感谢您的帮助!
我尝试在Xcode 5下针对iOS 6 SDK编译我的应用程序.我按照一些教程如何在Xcode 5中使用旧的iOS SDK:将SDK从旧的Xcode(4.6.3)复制到Xcode 5中.
一切似乎都很好,我将"Base SDK"设置为"iOS 6.1",将"iOS Deployment Target"设置为"iOS 5.0"并下载iOS 6.1模拟器.但是当我尝试编译应用程序时,我遇到了很多错误'UIAccelerometer' is unavailable: not available on OS X
我不想为OS X构建我的应用程序,仅适用于iOS!我检查了"支持的平台",但它已正确设置为"iOS".


这个Java代码有效:
public void executeCommand(ICommand cmd) { // ICommand is an Interface
if (cmd.getClass().equals(LoginCommand.class)){
}
}
Run Code Online (Sandbox Code Playgroud)
但是这个Objective-C-Code不起作用:
- (void)executeCommand: (id<Command>)cmd { // Command is a Protocol
if ([cmd isKindOfClass:[LoginCommand class]]) {
// WARNING: '-conformsToProtocol:' not found in protocol
}
}
Run Code Online (Sandbox Code Playgroud) UINavigationItem中有3个Bar-Buttons:
但是没有"nextBarButtonItem"(=带箭头的rightBarButtonItem).我该如何创建它?我需要带箭头的自己的图像吗?如何将图像放在rightBarButtonItem中?或者没有图像有更好的方法吗?

在我的项目中,我使用Facebook API"three20":https://github.com/facebook/three20/
现在,我需要自定义TTPhotoViewController.在画廊中,有一个"自动缩放".始终使用完整的宽度和高度:

缺点是您无法看到完整的照片,并且可能会切断/裁剪重要信息.
如何停用自动变焦?
谢谢!
罗曼的回答似乎很好,但不幸的是,这对我没有帮助.是的,内容模式UIViewContentModeScaleAspectFill是问题:
缩放内容以填充视图的大小.可以剪裁内容的某些部分以填充视图的边界.
但是没有其他内容模式可以解决我的问题.我想,我必须深入了解three20并自己缩放图像.但我需要你的帮助才能做到这一点!那么,今天我将开始一个新的"赏金"(03/03/2011)......
非常感谢你!!
终于我明白了!!罗马的答案是对的,我必须使用UIViewContentModeScaleAspectFit.
问题是:我在Photo-Object中使用了错误的大小!320x480为我工作:
NSMutableArray *photos = [NSMutableArray new];
for (Information *info in allImages) {
NSString *binaryId = info.binary;
NSString *fileName = [NSString stringWithFormat:@"documents://img/%@.jpg", binaryId];
Photo *photo = [[[Photo alloc] initWithCaption:info.name
urlLarge:fileName
urlSmall:fileName
urlThumb:fileName
size:CGSizeMake(320, 480)] autorelease];
[photos addObject:photo];
}
self.photoSource = [[PhotoSet alloc] initWithTitle:@"Photos" photos:photos];
Run Code Online (Sandbox Code Playgroud) 在Java中,您可以使用instanceof检查类是否扩展另一个类或实现接口.
在Objective-C中,您可以使用isKindOfClass检查类是否扩展了另一个类:
if ([myObject isKindOfClass:[AnClass class]]) { }
Run Code Online (Sandbox Code Playgroud)
但我怎么能检查,如果一个类被通过扩展类别?
不幸的是,我的第一个编辑的代码有点令人困惑和荒谬,抱歉!现在,这是我的新代码:
我将解释整个问题:
我有一个课程ViewCustomerCreate延伸UITableViewController.ViewCustomerCreate按类别扩展ICheckBox.这是我的代码不起作用:
- (void)closeModalView {
UINavigationController *parent = (UINavigationController *)self.navigationController.parentViewController;
UIViewController *parentViewContr = parent.topViewController;
if ([parentViewContr isKindOfClass:[id<ICheckBox> class]]) { // ERROR-MESSAGE see below
id<ICheckBox> parent2 = (id<ICheckBox>)parentViewContr; // works fine :-)
[parent2 setSelectedElementId:checkedIndex]; // works fine :-)
}
[self.navigationController dismissModalViewControllerAnimated:YES];
}
Run Code Online (Sandbox Code Playgroud)
错误消息是: " 错误:'id'不是Objective-C类名或别名 "
我认为我不能使用isKindOfClass来检查一个类是否被一个类扩展,不是吗?
PS:我想要什么?我有一个带复选框的通用模态视图,如果我关闭此视图,则应该通知父视图用户选择的内容.
天哪,我把分类与协议混为一谈!! Aaaaahhhhh ^^
解决方案:
if …Run Code Online (Sandbox Code Playgroud) 是否可以在iOS中使用"Forwarding"(http://en.wikipedia.org/wiki/Objective-C#Forwarding)?
我尝试了以下在此处找到的代码:
- (retval_t) forward: (SEL) sel : (arglist_t) args
Run Code Online (Sandbox Code Playgroud)
但是我收到一条错误消息:
错误:预期')'在'retval_t'之前
所以我在这里阅读并尝试:
- (retval_t)forward:(SEL)sel args:(arglist_t) args
Run Code Online (Sandbox Code Playgroud)
但我得到了同样的错误信息......
我究竟做错了什么?我需要导入一些东西吗?
@bbum:我尝试创建一个线程安全的NSMutableArray,并希望使用我在这里找到的代码: NSMutableDictionary线程安全
我想补充一个UIImage在UIImageView的UITableViewCell内部UITableViewController.这很好用:
cell.imageView.image = [UIImage imageNamed:@"myImage.png"];
Run Code Online (Sandbox Code Playgroud)
但现在,我想合并两个图像并使用我在这里找到的代码:
UIImage *mergedImage = [MyUtils mergeImage:@"myBackImage.png" withImage:@"myFrontImage.png"];
Run Code Online (Sandbox Code Playgroud)
这适用于旧的iPhone(320x480)但不适用于视网膜显示器.在我的项目中,每个图像都有"@ 2x"版本.我分析代码并解释问题.
a)在iPhone 3上没有合并(WORKS)
- 图像宽度:28.0
- 图像高度:29.0
- 图像比例:1.0
b)在iPhone 3上进行合并(WORKS)
- 图像宽度:28.0
- 图像高度:29.0
- 图像比例:1.0
c)在iPhone 4上没有合并(WORKS)
- 图像宽度:28.0
- 图像高度:29.0
- 图像比例:2.0
d)在iPhone 4上合并(WORKS NOT)
- 图像宽度:56.0
- 图像高度:58.0
- 图像比例:1.0
如您所见,合并将"28.0/29.0/2.0"转换为"56.0/58.0/1.0"图像.并且这个图像在视网膜显示器上显示得很大.
如何正确合并两个图像以获得2.0的图像?
+ (UIImage*)mergeImage:(UIImage*)first withImage:(UIImage*)second
{
// get size of the first image
CGImageRef firstImageRef = first.CGImage;
CGFloat firstWidth = CGImageGetWidth(firstImageRef); …Run Code Online (Sandbox Code Playgroud) iphone ×8
objective-c ×8
ios ×7
xcode ×2
.net ×1
categories ×1
forwarding ×1
interface ×1
protocols ×1
request ×1
three20 ×1
uiimage ×1
xcode4.3 ×1
xcode5 ×1