小编Tec*_*Zen的帖子

如何获取UIWebView中显示的HTML页面的标题?

我需要从UIWebView中显示的HTML页面中提取title标签的内容.这样做最有力的方法是什么?

我知道我能做到:

- (void)webViewDidFinishLoad:(UIWebView *)webView{
    NSString *theTitle=[webView stringByEvaluatingJavaScriptFromString:@"document.title"];
}
Run Code Online (Sandbox Code Playgroud)

但是,这仅在启用了javascript时才有效.

或者,我可以只扫描标题的HTML代码文本,但这感觉有点麻烦,如果页面的作者对他们的代码变得怪异,可能会很脆弱.如果是这样,那么在iPhone API中处理html文本的最佳方法是什么?

我觉得我已经忘记了一些明显的东西.有没有比这两种选择更好的方法?

更新:

以下是对这个问题的回答:UIWebView:你可以禁用Javascript吗?似乎没有办法在UIWebView中关闭Javascript.因此,上面的Javascript方法将始终有效.

iphone objective-c uiwebview foundation ios

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

适合录制语音的AVAudioRecorder设置?

我正在使用AVAudioRecorder添加语音备忘录功能,我需要知道录音机录制语音的最佳设置.

不幸的是,我对音频一无所知,甚至不确定google的条款.

目前,我正在使用以下内容从某处复制以进行测试:

recorderSettingsDict=[[NSDictionary alloc] initWithObjectsAndKeys:[NSNumber numberWithInt:kAudioFormatAppleIMA4],AVFormatIDKey,
                        [NSNumber numberWithInt:44100.0],AVSampleRateKey,
                        [NSNumber numberWithInt: 2],AVNumberOfChannelsKey,
                        [NSNumber numberWithInt:16],AVLinearPCMBitDepthKey,
                        [NSNumber numberWithBool:NO],AVLinearPCMIsBigEndianKey,
                        [NSNumber numberWithBool:NO],AVLinearPCMIsFloatKey,
                        nil];
Run Code Online (Sandbox Code Playgroud)

要么:

defaultSettings =     {
    AVFormatIDKey = 1768775988;
    AVLinearPCMBitDepthKey = 16;
    AVLinearPCMIsBigEndianKey = 0;
    AVLinearPCMIsFloatKey = 0;
    AVNumberOfChannelsKey = 2;
    AVSampleRateKey = 44100;
};
Run Code Online (Sandbox Code Playgroud)

这有效,但我不知道它在质量,速度,文件大小等方面是否适合语音.

AVAudioRecorder类参考列出许多设置的常量,但我不知道那些使用语音其中.

如果有人知道一个好的"AudioFormats for Dummy"资源,我也会这样做.(注意:我已经浏览过Apple Docs,他们假设我没有数字音频知识库.)

iphone avaudiorecorder

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

在Aptana Studio 3.0中查找快捷方式到评论代码

我在Aptana Studio 3.0中找不到任何用于评论我的代码的快捷方式.我需要快捷方式来评论各行和评论选定的代码块.

有些人告诉我尝试用WIN + /我的Windows操作系统上的快捷方式发表评论,但这似乎不可行.

aptana ide comments keyboard-shortcuts

34
推荐指数
3
解决办法
4万
查看次数

易于使用的django验证码或注册应用程序与验证码?

我想在Django中使用captcha实现用户注册.django-registration app 的工作流程很棒,但它没有验证码.

你建议使用什么验证码吗?是否有其他一些注册+验证码变体或有关该主题的有用链接?

这应该适用于Django-1.1并且安装起来不会太难.

django captcha registration

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

iPhone:更改CGImage的CGImageAlphaInfo

我有一个PNG图像具有不受支持的位图图形上下文像素格式.每当我尝试调整图像大小时,都会CGBitmapContextCreate()以不支持的格式进行扼流

我收到以下错误(格式错误,以方便阅读):

CGBitmapContextCreate: unsupported parameter combination: 
    8 integer bits/component; 
    32 bits/pixel; 
    3-component colorspace; 
    kCGImageAlphaLast; 
    1344 bytes/row.
Run Code Online (Sandbox Code Playgroud)

支持的像素格式列表绝对不支持这种组合.看来我需要重绘图像并将alpha通道信息移动到kCGImageAlphaPremultipliedFirst或kCGImageAlphaPremultipliedLast.

我不知道该怎么做.

PNG文件没有任何异常,并且没有损坏.它在所有其他环境中工作得很好.我偶然遇到这个错误,但显然我的用户可能有类似格式的文件,所以我必须检查我的应用程序的导入图像并纠正这个问题.

iphone png alpha cgimage cgbitmapcontextcreate

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

如果在滚动期间更新数据源,则UITableView会崩溃

我有一个应用程序,其中UITableView的数据源每隔30秒由一个后台线程从远程服务器更新.

如果用户正在滚动tableView或者正在进行tableView,则会发生崩溃reloadTableView:.崩溃的原因是崩溃时表中的行数与重绘开始时的行数不匹配.

当请求的TableView单元格超出范围时会发生另一次崩溃,因为在numberofTableViewCells:调用时间和调用时间之间cellfForRowAtIndexPath,数据模型已更改且单元格不再存在.

tableView的数据从后台线程更新.在从服务器加载数据时,用户仍应能够与tableView进行交互,但现在导致崩溃.

在更新tableViewDataSource时,如何阻止tableView滚动或重新加载?这种情况的最佳做法是什么?

谢谢.

iphone uitableview

24
推荐指数
2
解决办法
9046
查看次数

使用多种深层关系构建NSPredicate的更好方法是什么?

我有三个实体:EntityA,EntityB和EntityC与多对多关系连接.

请参阅架构了解详情:

替代文字http://img706.imageshack.us/img706/9974/screenshot20091220at124.png

为了获取依赖于EntityB.name的EntityA的所有实例,我使用这样的谓词:

NSPredicate *predicate = [NSPredicate predicateWithFormat:@"ANY EntityB.name like 'SomeName'"];
Run Code Online (Sandbox Code Playgroud)

获取依赖于EntityC.name的所有EntityA实例应该是什么谓词?我尝试过查询@"ANY EntityB.entitiesC.name like 'SomeName'"但得到异常"multiple to-many keys not allowed here".

最好的祝福,

胜利者

iphone core-data nspredicate

21
推荐指数
1
解决办法
5591
查看次数

NSPredicate用于在关系实体内进行搜索

我有一个名为Band的实体,它与Category实体有很多关系.Category实体只包含categoryName字符串属性.

一个示例记录:

Band:       
  bandName: Kiss
  bandCategories:   -  > BandCategory:categoryName:Glam
                    -  > BandCategory:categoryName:Rock
Run Code Online (Sandbox Code Playgroud)

例如,我如何使用NSPredicate通过我的所有乐队搜索与Rock类别相匹配的乐队?

iphone core-data objective-c nspredicate ios

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

核心数据存储损坏

我的iPhone应用程序的少数客户正在经历核心数据存储损坏(我假设是这样,因为错误是"无法保存到数据存储:操作无法完成.(可可错误259.)")

有没有其他人经历过这种商店腐败?我很担心,因为我的目标是很快推出执行模式迁移的更新,我担心这会暴露更多的问题.

我假设Core Data/SQLlite API使用原子操作并且不受损坏,除非底层文件系统遇到损坏.

有没有办法减少/防止腐败,以及重现腐败的方法,所以我可以测试这个(到目前为止我没有成功).

编辑:

还得到此错误:"/var/mobile/Applications//Documents/foo.sqlite中的数据库已损坏.SQLite错误代码11,数据库磁盘映像格式错误."

sqlite iphone core-data

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

问题将多个视图控制器推送到导航控制器堆栈

我试图将三个视图控制器推到导航控制器上.

  [self.navigationController pushViewController:one animated:YES];
  [self.navigationController pushViewController:two animated:YES];
  [self.navigationController pushViewController:three animated:YES];
Run Code Online (Sandbox Code Playgroud)

所需的行为是视图三将显示,当按下后退按钮时,它将查看两个,然后查看一个...

实际发生的是视图一是可见的,然后按回去查看两个然后再返回查看一个.也就是说,显示视图一而不是视图三.

非常奇怪的是,在上面的调用显示正确的条目之后查看navigationController的viewController数组,并查看visibleViewController属性显示它有视图三...即使视图一是可见的.

如果我从可见视图导航到子视图(在视图中显示三个)并从该子视图中按回...它将进入查看三.

看起来它正在显示一个视图,但知道它在视图三...

我完全糊涂了......任何想法?

吉姆

iphone

16
推荐指数
2
解决办法
6841
查看次数