我正在寻找一个关于如何将从url加载的图像缓存到uitableview的单元格中的教程.
我在这里找到了一个例子
http://www.ericd.net/2009/05/iphone-caching-images-in-memory.html#top
但代码不完整.我是一个客观的新手所以我发现填补缺失的部分非常困难.
我有一个UITableview多个细胞.在每个单元格上,我根据一些数组计数动态添加按钮.所以,当我点击一个按钮时,我就可以获得按钮的tag值.但是如何获得indexPath那个细胞呢?
这是我的代码-cellForRowAtIndexPath:
UIView *view=(UIView*)[cell.contentView viewWithTag:indexPath.row+444];
UIImageView *img=(UIImageView*)[cell.contentView viewWithTag:indexPath.row+999];
img.image=[UIImage imageNamed:@"BHCS_empty.png"];
if(integer!=50)
{
NSInteger y_axis=0;
NSArray *Arr=[tableSubCategoryArr objectAtIndex:indexPath.row];
img.image=[UIImage imageNamed:@"BHCS_selected.png"];
view.Frame= CGRectMake(0,50,281, integer-50);
for (int i=0; i<[Arr count]; i++)
{
NSLog(@"arr %@",[Arr objectAtIndex:i]);
UIButton *Btn=[UIButton buttonWithType: UIButtonTypeCustom];
Btn.frame=CGRectMake(0, y_axis, 281, 44);
[Btn setImage:[UIImage imageNamed:@"BHCS_panel.png"] forState:UIControlStateNormal];
[Btn addTarget:self action:@selector(subCategoryBtnClicked:) forControlEvents:UIControlEventTouchUpInside];
[Btn setTag:i+100];
[view addSubview:Btn];
UILabel *nameLbl=[[UILabel alloc]initWithFrame:CGRectMake(20, y_axis,248, 44)];
nameLbl.text = [[Arr objectAtIndex:i]objectForKey:@"SubCategoryName"];
nameLbl.textColor = [UIColor whiteColor];
nameLbl.backgroundColor=[UIColor clearColor];
panelTableView.separatorColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"BHCS_panel_div1.png"]]; …Run Code Online (Sandbox Code Playgroud) 我有两个视图控制器.视图控制器A具有UIScrollView并呈现视图控制器B.该演示是交互式的并由控制器控制scrollView.contentOffset.
我想整合一个交互式消除过渡:当平移时,ViewController B应该以交互方式被解雇.交互式dismiss转换还应控制ViewController的scrollView.
我的第一次尝试是使用a UIPanGestureRecognizer并scrollView.contentOffset根据平移距离进行设置.这是有效的,但是当平移手势结束时,必须将scrollView偏移设置为最终位置的动画.使用-[UIScrollView setContentOffset:animated:不是一个好的解决方案,因为它使用线性动画,不考虑当前的平移速度并且不会很好地减速.
所以我认为应该可以将我的平移手势识别器中的触摸事件提供到滚动视图中.这应该给我们所有漂亮的滚动视图动画行为.
我尝试覆盖-touchesBegan/Moved/Ended/Cancelled withEvent:我的UIPanGestureRecognizer子类中的方法,如下所示:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[scrollView touchesBegan:touches withEvent:event];
[scrollView.panGestureRecognizer touchesBegan:touches withEvent:event];
[super touchesBegan:touches withEvent:event];
}
Run Code Online (Sandbox Code Playgroud)
但显然有些东西阻止滚动视图进入tracking模式.(确实如此,dragging = YES但这就是它.)我验证了scrollView是userInteractionEnabled,而不是隐藏并添加到视图层次结构中.
那么我怎样才能将我的触摸事件转发给UIScrollView?
有没有办法从我的Mac OS X地址簿自动导入联系人到iPhone模拟器联系人应用程序?或vCards或类似的东西?我正在构建一个以各种方式显示联系人的应用程序,我希望有一种方法可以拥有大量的联系人,而无需在自己中键入所有联系人.
我正在开发一个基于GPS的应用程序.所以我想知道如何在iphone模拟器上模拟位置?我下载了一个示例应用程序locateMe.这个程序在模拟器上不起作用.模拟器不支持位置api吗?
任何帮助,将不胜感激.
我刚刚在Android应用程序上工作时发现了9-Patch PNG(somefile.9.png),我对此技术节省的工作量和文件感到非常惊讶.
有没有办法以某种方式在常规浏览器上实现这项技术?(使用某种jQuery插件,或其他一些方式..).如果它可以与CSS一起使用 - 这可能是非常好的改进......
如何在粘贴板中复制NSAttributedString,以允许用户粘贴或以编程方式粘贴(使用- (void)paste:(id)senderUIResponderStandardEditActions协议).
我试过了:
UIPasteboard *pasteBoard = [UIPasteboard generalPasteboard];
[pasteBoard setValue:attributedString forPasteboardType:(NSString *)kUTTypeRTF];
Run Code Online (Sandbox Code Playgroud)
但这次崩溃:
-[UIPasteboard setValue:forPasteboardType:]: value is not a valid property list type'
Run Code Online (Sandbox Code Playgroud)
这是预期的,因为NSAttributedString不是属性列表值.
如果用户在我的应用中粘贴了粘贴板的内容,我希望保留属性字符串的所有标准和自定义属性.
我正在使用适用于iOS的Google Maps SDK的当前版本1.1.2.地图仅显示Google徽标,当前位置和添加的标记.但是没有任何地图内容:

我正确注册了API密钥:
BOOL result = [GMSServices provideAPIKey:@"<my key>"];
Run Code Online (Sandbox Code Playgroud)
结果是YES,我验证了bundleIdentifier与API控制台匹配.我从故事板加载GMSMapView并将相机设置为-viewDidLoad:
self.mapView.camera = [GMSCameraPosition cameraWithLatitude:0 longitude:0 zoom:2];
Run Code Online (Sandbox Code Playgroud)
这由GMSMapView记录:
Failed to make complete framebuffer object 8cd6
Failed to make complete framebuffer object 8cd6
Google Maps SDK for iOS version: 1.1.2.2533
GMSZoomTableQuadTree lacks root zoom table for tile type (mapType: 10)
GMSZoomTableQuadTree lacks root zoom table for tile type (mapType: 15)
Run Code Online (Sandbox Code Playgroud)
知道什么可能导致这个问题吗?
我的目的是在Swift中创建一个符合Objective-C协议的泛型类:
这堂课是:
class BaseViewFactoryImpl<T> : NSObject, BaseView {
func getNativeInstance() -> AnyObject {
return String("fsd")
}
}
Run Code Online (Sandbox Code Playgroud)
协议BaseView是:
@protocol BaseView < NSObject >
- (id)getNativeInstance;
@end
Run Code Online (Sandbox Code Playgroud)
编译器告诉我:
Type 'BaseViewFactoryImpl<T>' does not conform to protocol 'BaseView'
Run Code Online (Sandbox Code Playgroud)
如果我删除<T>那么没有错误.
这有什么不对?如何获得正确的泛型类实现?
在iOS 11上,Apple推出了一种在Web和移动应用程序之间共享身份验证数据的新方法SFAuthenticationSession.
SFAuthenticationSession向每个新用户(可能从未使用过我的网站)显示提示,让他们同意然后从中获取任何内容并要求他们登录将是一个糟糕的用户体验.
有没有办法知道在显示SFAuthenticationSession提示之前是否有可用的cookie ?或者,通过Associated Domains启用,在使用我的域进行身份验证时,系统不应显示提示?
ios ×8
iphone ×5
cocoa-touch ×2
uitableview ×2
copy-paste ×1
css ×1
html ×1
ios11 ×1
jquery ×1
oauth ×1
objective-c ×1
png ×1
swift ×1
uikit ×1
uipasteboard ×1
uiscrollview ×1
xcode ×1