小编Ste*_*dle的帖子

如何以编程方式滚动Android WebView

我正在尝试以编程方式将WebView滚动到DOM树中特定元素的位置.但到目前为止,我还没有能够让WebView响应滚动请求.我试过调用使用的JavaScript window.scrollTo(...),但WebView没有响应.在Java方面,我试过调用该WebView.flingScroll(...)方法.WebView会响应flingScroll,但我需要的是一种scrollTo(...)功能.有任何想法吗?

android scroll webview

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

转换到iOS 5时需要注意什么

简介: 您可以添加到我的迁移到iOS 5时要注意的事项清单吗? StackOverflow一直非常宝贵,因为我已经开始升级到iOS 5.我发现了一些在Xcode 4.2之前我错过的非常基本的东西,我想知道其他"陷阱"可能潜伏着什么.

细节:本周iOS 5发货,我不得不对我的几个应用程序进行一些更改.由于新的ARC功能,Xcode 4.2在分析内存管理代码方面做得更好.iOS 5更新是查看所有内存管理代码的重要点.新编译器还发现了早期编译器遗漏的许多其他问题.感谢Apple编译工程师.以下是有帮助的主要内容(其中许多内容也适用于早期版本的iOS).

  1. 确保在dealloc方法的END处调用[super dealloc],而不是在开头.
  2. 在viewDidUnload中,有些人报告了需要在viewDidUnload 的末尾而不是开头调用[super viewDidUnload]的错误.
  3. 了解保留计数,合成设置器以及何时调用释放或自动释放.新编译器将指出比旧编译器更多的问题.(我以为我一直很小心,但显然我不够小心.)Apple的内存管理指南是必读的 - 没有捷径.
  4. 在调试时打开僵尸是个好主意(在Xcode中,选择Product | Edit Scheme ...并选择Debug方案;在Diagnostics选项卡上,选中Enable Zombie Objects).这可以帮助您找到僵尸的尝试使用(您不应再使用的对象).
  5. 泄漏仪器也很有帮助.在配置文件模式下运行您的应用程序,然后选择Leaks模板.在"仪器"窗口中,选择"泄漏"仪器并选中"收集泄漏的内存内容"框,它将帮助您查看泄漏的内存源自代码的位置.

我遇到过一些可能的结果:

  • Apple的单例模式需要在返回类型声明中添加"oneway":
    - (oneway void) release { }

我应该寻找潜在陷阱的任何其他建议吗?我觉得我的应用程序现在更加稳定,但我之前觉得它们相当不错.

memory-management ios ios5

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

自定义ListView上的setOnItemClickListener

我有一个习惯ListView.这ListView包含1个图像和6个TextView.要检索我创建的值setOnItemClickListener(...).每当我点击我ListView怎样才能真正从6 TextView中检索所有数据?

android listview

24
推荐指数
3
解决办法
13万
查看次数

安装Facebook应用程序时身份验证失败(iOS)

我刚刚开始看到Facebook Connect身份验证的问题.如果我安装了iOS应用程序版本3.4.4,则调用我的委托的fbDidNotLogin方法,并显示错误消息"用户拒绝了您的请求".当我卸载FB应用程序时,身份验证工作正常.还有其他人看到这个吗?有谁知道如何绕过这个bug?

这是我对Facebook对象的调用:

[[app facebook] authorize:[NSArray arrayWithObjects:
                           @"publish_stream", @"offline_access", nil]
                           delegate:app];
Run Code Online (Sandbox Code Playgroud)

facebook connect ios

13
推荐指数
1
解决办法
9754
查看次数

应用程序在取消打印活动后崩溃

我的应用支持打印.如果用户取消打印机选项模式视图控制器,则应用程序会在Apple的代码中的某处崩溃,并显示消息_WebTryThreadLock(bool) ... Tried to obtain the web lock from a thread other than the main thread or the web thread. This may be a result of calling to UIKit from a secondary thread. Crashing now...

我把它缩小到以下代码:

let itemProvider = UIActivityItemProvider(placeholderItem: "message")
let activityItems = [ itemProvider,
                      UIMarkupTextPrintFormatter(markupText: "test") ]
let activityController = UIActivityViewController(activityItems: activityItems,
                                              applicationActivities: nil)
self.present(activityController, animated: true, completion: nil)
Run Code Online (Sandbox Code Playgroud)

如果我itemProvideractivityItems阵列中删除,崩溃就会消失.在我的应用程序中,我有一个自定义子类UIActivityItemProvider,但即使我使用超类而没有自定义它,我得到了这个崩溃.

要复制,请使用单个按钮创建单视图项目,并将该按钮链接到使用上面的代码片段作为其主体的操作.然后点击按钮,点击活动视图控制器中的"打印"图标,然后点击"打印机选项"视图控制器中的"取消"按钮.崩溃.有任何想法吗?

ios swift uiactivityitemprovider

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