小编Ale*_*lex的帖子

Objective-c中+和 - 方法之间的区别

使用 - 声明的方法与使用+声明的方法之间有什么区别

例如

- (void)methodname

+ (void)methodname
Run Code Online (Sandbox Code Playgroud)

iphone cocoa objective-c

33
推荐指数
2
解决办法
9610
查看次数

获取Python中的当前URL

我如何使用Python获取当前URL,

我需要抓取当前的URL,以便我可以检查查询字符串,例如

requested_url = "URL_HERE"

url = urlparse(requested_url)

if url[4]:
    params = dict([part.split('=') for part in url[4].split('&')])
Run Code Online (Sandbox Code Playgroud)

这也适用于Google App Engine

python google-app-engine

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

在JavaScript中使用[]而不是新的Array()的优点

使用有什么好处

var foo = []; 
Run Code Online (Sandbox Code Playgroud)

过度使用

var bar = new Array();
Run Code Online (Sandbox Code Playgroud)

我被告知在新的Array()上使用[]但从来没有太多解释

javascript

19
推荐指数
2
解决办法
2139
查看次数

处理大量的MKMapView注释

我有一个带有大量注释(3000+)的地图视图,当用户缩放到合理的水平时,一切都很好而且快速.

虽然当用户缩小并且大量注释进入视图时,由于一次显示大量注释,因此存在大量减速.处理这个问题的最佳方法是什么?

我正在使用的当前解决方案:

- (void)mapView:(MKMapView *)_mapView regionDidChangeAnimated:(BOOL)animated {

    NSArray *annotations = [_mapView annotations];  
    MapAnnotation *annotation = nil; 

    for (int i=0; i<[annotations count]; i++)
    {
        annotation = (MapAnnotation*)[annotations objectAtIndex:i];
        if (_mapView.region.span.latitudeDelta > .010)
        {
            [[_mapView viewForAnnotation:annotation] setHidden:YES];
            warningLabel.hidden = NO;
        }
        else {
            [[_mapView viewForAnnotation:annotation] setHidden:NO];
            warningLabel.hidden = YES;
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

虽然由于环路的大小很大,但在放大和缩小以及滚动时会导致很多速度变慢.我似乎无法想到一个更好的方法来处理这个问题,有没有办法只循环当前正在显示的注释或沿着那些线的东西来减少循环的大小?

iphone objective-c mkmapview

10
推荐指数
2
解决办法
6957
查看次数

调用reloadRowsAtIndexPaths会删除tableView contentOffset

每当我打电话

reloadRowsAtIndexPaths
Run Code Online (Sandbox Code Playgroud)

我的UITableView contentOffset被删除了,是否有一个委托方法我可以用来捕获表视图更新并再次设置Offset以使其保持原位并且不会动画到视图中,或者只是阻止它执行此操作?

我在viewDidLoad中设置contentOffest:

self.tableView.contentOffset = CGPointMake(0, 43);
Run Code Online (Sandbox Code Playgroud)

以下是一个示例用法:

[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObjects:[params valueForKey:@"index"], nil] withRowAnimation:UITableViewRowAnimationFade];
Run Code Online (Sandbox Code Playgroud)

这将删除contentOffset并将其动画到视图中,这是我不想要的.

更具体地说,当重新加载的行位于indexPath.section 0和indexPath.row 0(即顶行)时,会出现这种情况.


更多信息

我在从服务器获取图像的异步请求之后调用reloadRowsAtIndexPaths.它基本上是这样的:

  • 调用cellForRowAtIndexPath,检查磁盘上是否存在拇指文件,如果文件不存在,则在其中加载占位符,并在后台线程中启动异步请求以获取图像.
  • 当图像下载完成后,我调用reloadRowsAtIndexPaths正确的单元格,以便正确的图像淡入而不是占位符图像.
  • 当在cellForRowAtIndexPath内调用请求时,单元格的数量可能不同,以便在单元格加载时加载图像

cellForRowAtIndexPath文件检查

paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
path = [[paths objectAtIndex:0] stringByAppendingPathComponent:[NSString stringWithFormat:@"%@_small.gif",[[listItems objectAtIndex:indexPath.row] valueForKey:@"slug"]]];

    if([[NSFileManager defaultManager] fileExistsAtPath:path]){

        listCell.imageView.image = [UIImage imageWithData:[NSData dataWithContentsOfFile:path]];

    } else {

        listCell.imageView.image = [UIImage imageNamed:@"small_placeholder.gif"];

        NSMutableDictionary *params = [[NSMutableDictionary alloc] initWithObjectsAndKeys:[[[listItems objectAtIndex:indexPath.row] valueForKey:@"image"] valueForKey:@"small"],@"image",[NSString stringWithFormat:@"%@_small.gif",[[listItems objectAtIndex:indexPath.row] valueForKey:@"slug"]], @"name",indexPath,@"index",@"listFileComplete",@"notification",nil];

        [NSThread detachNewThreadSelector:@selector(loadImages:) toTarget:self withObject:params];

        [params release];

    }
Run Code Online (Sandbox Code Playgroud)

文件下载通知:

-(void)fileComplete:(NSNotification *)notification { …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uitableview

9
推荐指数
1
解决办法
9023
查看次数

使用minidom获取节点名称

是否可以使用minidom获取节点的名称?

例如,我有一个节点:

<heading><![CDATA[5 year]]></heading>
Run Code Online (Sandbox Code Playgroud)

我正在尝试做的是存储值,heading以便我可以将它用作字典中的键.

我能得到的最接近的是:

[<DOM Element: heading at 0x11e6d28>]
Run Code Online (Sandbox Code Playgroud)

我确定我在这里忽略了一些非常简单的事情,谢谢.

python minidom

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

Objective-c HTTP基本身份验证

我将如何在objective-c中复制这个

curl -u rick@email.com:mypassword http://foo.lighthouseapp.com/projects.xml
Run Code Online (Sandbox Code Playgroud)

我一直在玩ASIHTTPRequest库,但似乎无法搞清楚,

显然发送我的请求会返回一个身份验证错误:

-(void)submit:(id)sender {
    NSURL *url = [NSURL URLWithString:@"http://ldn.lighthouseapp.com/projects/63254-londonist-20/tickets.xml"];
    ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
    [request startSynchronous];
    NSError *error = [request error];
    if (!error) {
        NSString *response = [request responseString];
        NSLog(@"response:%@",response);
    } else {
        NSLog(@"error:%@",error);
    }
}
Run Code Online (Sandbox Code Playgroud)

这可能很简单,我只是缺少一些非常重要的东西

authentication objective-c httpwebrequest lighthouse

7
推荐指数
2
解决办法
1万
查看次数

设置UITableView contentInset也会使节标题视图不可见

我正在更改我的tableviews contentInset,以便当用户滚动超出表的顶部边界时,tableview将插入显示隐藏在tableView上方的UISearchBar.

除了节标题视图外,一切正常.向下滚动时,sectionHeaderView的顶部边界与我的tableview插图相距离屏幕顶部的距离相同,这里是起始位置:

标题视图位置正确

在上图中,sectionheader视图设置为正确的位置,tableview inset已设置为显示搜索字段.

在此输入图像描述

您可以在第二个屏幕截图中看到,由于43像素的tableview插图,标题视图的上限设置得较低,因为它应该粘贴在屏幕顶部隐藏"相关"单元格并在释放时弹回.

我想我需要以某种方式抵消插入,我只是不确定如何..

iphone objective-c uitableview

7
推荐指数
1
解决办法
1万
查看次数

atebits Twitter快速滚动

我想在Twitter应用程序中实现atebits使用的相同技术,以实现非常快速的UITableView滚动,

http://blog.atebits.com/2008/12/fast-scrolling-in-tweetie-with-uitableview/

但是,由于Tweetie被Twitter购买,因此atebits已经不复存在,示例代码已经消失,以及网站的所有css.

有没有人有一个示例代码的副本或实现这种将UITableViewCell绘制到一个视图中的方法的不同资源?

cocoa-touch objective-c uitableview

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

使用Ruby on Rails link_to div

我将如何使用

<% link_to (post) do %>
   <%= pluralize(post.comments.size,'comment') %>
<% end %>   
Run Code Online (Sandbox Code Playgroud)

链接到div,例如url:

http://myblog.com/post/21#mydiv
Run Code Online (Sandbox Code Playgroud)

我需要这样做,以便当用户点击评论链接时,他们将被带到页面上的评论div.这也可用于将用户重定向到他们刚发布的评论,如下所示:

http://myblog.com/post/21#comment_id
Run Code Online (Sandbox Code Playgroud)

非常感谢!

ruby-on-rails

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