我有一个自定义复杂的UITableViewCell,其中有很多视图.我有一个UIImageView,它在特定条件下可见.当它可见时,
当用户点击UIImageView时,我必须执行一些Action.
我知道我必须为这个任务触发一个选择器.但是我也希望将值传递给该方法(请参阅 - (void)onTapContactAdd:(id)sender:(NSString*)uid),这将在UITableViewCell中的UIImageView上作为Tap操作调用我正在谈论.这是因为,使用该传递的值,被调用的方法将完成它的工作.
这是我到目前为止所尝试的.
cell.AddContactImage.hidden = NO ;
cell.imageView.userInteractionEnabled = YES;
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onTapContactAdd::)];
[tap setNumberOfTouchesRequired:1];
[tap setNumberOfTapsRequired:1];
[tap setDelegate:self];
[cell.AddContactImage addGestureRecognizer:tap];
-(void)onTapContactAdd :(id) sender : (NSString*) uid
{
NSLog(@"Tapped");
// Do something with uid from parameter
}
Run Code Online (Sandbox Code Playgroud)
点击时不调用此方法.我在我的头文件中添加了.
感谢您的帮助.
我有一个由以下代码创建的UIButton
button = [UIButton buttonWithType:UIButtonTypeCustom];
[button setImage:[UIImage imageNamed:@"refresh_icon.png"] forState:UIControlStateNormal];
[button setImage:[UIImage imageNamed:@"reload_selected.png"] forState:UIControlStateSelected];
[button addTarget:self action:@selector(buttonAction:)forControlEvents:UIControlEventTouchUpInside];
[button setFrame:CGRectMake(0, 0, 20 , 20)];
Run Code Online (Sandbox Code Playgroud)
在这里点击选择器按钮动作被调用,我通过这样的360度旋转动画按钮
- (void) buttonAction : (id) sender {
NSLog(@"Reload Button Clicked");
[self runSpinAnimationOnView:self.button duration:1.0 rotations:1.0 repeat:0];
}
- (void) runSpinAnimationOnView:(UIView*)view duration:(CGFloat)duration rotations:(CGFloat)rotations repeat:(float)repeat;
{
CABasicAnimation* rotationAnimation;
rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
rotationAnimation.toValue = [NSNumber numberWithFloat: M_PI * 2.0 /* full rotation*/ * rotations * duration ];
rotationAnimation.duration = duration;
rotationAnimation.cumulative = YES;
rotationAnimation.repeatCount = repeat;
[view.layer addAnimation:rotationAnimation forKey:@"rotationAnimation"];
} …Run Code Online (Sandbox Code Playgroud) 我们可以让iOS设备充当iBeacon发射器,如果我们知道他们的Proximity UUID,我们可以找到附近的iBeacons.
使用Google的Proximity Beacon API,可以配置和注册真正的Beacon硬件,我们可以使用Nearby Messaging API找到它们.
但是有可能让iOS设备作为Eddystone Beacons进行广播吗?扫描Eddystone信标的应用程序需要发现它.
提前致谢.
我正在使用以下代码在我的Xib文件中截取特定视图的屏幕截图...
UIView* captureView = self.view;
UIGraphicsBeginImageContextWithOptions(captureView.bounds.size, NO , 0.0f);
[captureView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage * screenshot = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);
Run Code Online (Sandbox Code Playgroud)
它工作正常,并将JPG图像保存到相机胶卷.
但问题是,在我的View顶部还有另一个UIImageView,UIImageView中有一个半透明的图像.我的屏幕截图并没有保留它正在拍摄的屏幕截图中的透明度.我想保持实际屏幕中的透明度.
如何保持屏幕截图的透明度?
我有2个UIViewControllers.在第一个UIViewController,比方说ViewController1,我保持UINavigationBar隐藏.因为我的应用程序的主题是黑色,所以我需要白色UIStatusBar,iOS 7以便它不会变成黑色隐形UINavigationBar.为了变白,UIStatusBar我正在使用这种方法iOS 7.
UIViewControllerBasedStatusBarAppearance到YES在plist viewDidLoad做一个[self
setNeedsStatusBarAppearanceUpdate]; 添加以下方法:
-(UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;
}
Run Code Online (Sandbox Code Playgroud)我在ViewController1时工作正常.但是当我移动到ViewController2时,如果我设置了
self.navigationController.navigationBarHidden = NO
Run Code Online (Sandbox Code Playgroud)
在我的viewDidLoad方法.然后上面的白色代码UIStatusBar不起作用.UIStatusBar变黑了,我看不到它,因为我使用以下代码来自定义我的UINavigationBar
self.navigationController.navigationBar.barTintColor = [UIColor blackColor];
self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
self.navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObject:[UIColor whiteColor] forKey:UITextAttributeTextColor];
self.navigationController.navigationBar.translucent = NO;
Run Code Online (Sandbox Code Playgroud)
如果我UINavigationBar像ViewController1一样隐藏,那么白色UIStatusBar再次可见.但是当UINavigationBar可见时,状态栏再次变为黑色.那就是问题所在.
任何人都可以帮助我在这种情况下,我怎么能得到像我的ViewController1白色状态栏?提前致谢.
为了实现iOS应用程序的推送服务,我们需要从Keychain访问导出推送证书作为Certificates.p12文件并将其上传到APN服务器。导出时要求输入密码。使用密码导出的Certificate.p12 文件和空白密码有什么区别?支持推送消息的 parse.com 等云服务不接受使用密码导出的 .p12 文件。当我们编写自己的 APN 服务器时,我们应该使用带密码导出的 .p12 文件还是不带密码导出的 .p12 文件?对于我来说,在没有密码的情况下导出 p12 文件时,我收到“UnrecoverableKeyException:获取密钥失败”错误。
在此先感谢您的帮助。
我在sails.js应用程序中使用gridfs将图像上传到服务器.我的上传代码如下
upload: function (req, res) {
req.file('avatar')
.upload({
adapter: require('skipper-gridfs'),
uri: 'mongodb://localhost:27017/dbname.images'
}, function whenDone(err, uploadedFiles) {
if (err) return res.negotiate(err);
else return res.ok({
files: uploadedFiles,
textParams: req.params.all()
});
});
}
Run Code Online (Sandbox Code Playgroud)
我得到以下回应......
{
"files": [
{
"fd": "2d8910a0-8ca2-4df1-9930-6ddd721a0416.jpg",
"size": 172883,
"type": "image/jpeg",
"filename": "Photo on 12-20-14 at 9.53 PM.jpg",
"status": "bufferingOrWriting",
"field": "avatar",
"extra": {
"fileId": "54aee6ced4a0e88f0dc9025f",
"fd": "2d8910a0-8ca2-4df1-9930-6ddd721a0416.jpg",
"dirname": "."
}
}
],
"textParams": {}
}
Run Code Online (Sandbox Code Playgroud)
我的问题是,如果我需要下载上面上传的文件,我该怎么办?我在互联网上获得了以下代码来下载任务,但这对我来说没有多大意义.基本上我想要上传图片的下载网址,我可以使用移动应用程序中的网址来显示图片.
var blobAdapter = require('skipper-gridfs')({
uri: 'mongodb://localhost:27017/dbname.images'
});
blobAdapter.read(filename, callback);
Run Code Online (Sandbox Code Playgroud)
有人可以帮我这个吗?提前致谢.
我一直在寻找一种方式,从我正在开发的iOS应用程序发布照片到Instagram.但是看到一些链接,似乎他们不支持使用他们的API进行写访问.所以,
他们的api说这个......
"目前,无法通过API上传.我们有意识地选择不添加此内容,原因如下:
Instagram是关于你在旅途中的生活 - 我们希望鼓励应用程序内的照片.但是,将来我们可能会根据具体情况授予白名单访问个人应用程序的权限.我们想要打击垃圾邮件和低质量的照片.一旦我们允许从其他来源上传,就很难控制Instagram生态系统中的内容.所有这些都说明了,我们正在努力确保用户在我们的平台上获得一致和高质量的体验."
这就是为什么我在寻找更好的建议.
在此先感谢您的帮助.
ios ×6
objective-c ×5
uiimageview ×2
beacon ×1
eddystone ×1
gridfs ×1
instagram ×1
ios7 ×1
iphone ×1
javascript ×1
mongodb ×1
node.js ×1
sails.js ×1
screenshot ×1
sharing ×1
ssl ×1
uibutton ×1
uitableview ×1