在开发我的iPad应用程序的最新功能期间,我意识到新的iOS5键盘对接/拆分行为导致了巨大的问题.我使用inputAccessoryView作为键盘,其上有一个文本字段,类似于Safari的页面搜索功能.我在可滚动的UIWebView上显示键盘,所以我的麻烦部分来自于键盘停靠时缩小的UIWebview,并且在取消停靠时具有(大部分)全屏webview.
我遇到的主要问题是新的UIKeyboardWillChangeFrameNotification和UIKeyboardDidChangeFrameNotification通知最多只是从之前的API退一步,而且垃圾数据几乎无法理解键盘在很多情况下的确在做什么.
是否可以识别以下任何键盘行为而无需仔细检查通知中返回的开始/结束帧?
我想出了一些抽象来识别停靠或屏幕外的帧,但即便如此,我的代码变得非常难以管理.如果您找到了更好的方法,请回答或评论.我希望我在这里遗漏一些东西.谢谢.
我刚开始使用Fiddler 2来创建我一直在创建的基于REST,JSON和SOAP的服务的请求对象.到目前为止,它运作良好.
当我尝试通过Internet Explorer使用我的一些公司资源时出现问题.我得到某种DNS错误,我意识到这是因为我的代理设置每次打开小提琴(IE6和IE8)时都被擦除了.有谁知道Fiddler可能在这里"摆弄"会导致这样一个奇怪的问题.
更多信息:这是在运行Windows XP的Virtual PC VM上发生的.正在消隐的确切内容位于工具 - > Internet选项 - >连接 - >局域网设置窗口中.选中了两个复选框,并填充了"高级"窗口中的字段.之后,所有人都被清空了.
我目前正在开发基于地图的iPhone应用程序,并希望向用户显示一些信息.对于我的应用程序,有一个用户可以选择英里或公里的某种设置是有意义的.是否有内置机制(可能类似于字符串本地化)来进行这种值切换,以便每次我想向用户显示内容时都可以避免使用if-block?
我有一些我想用xslt处理的xml.密钥值对中有大量数据(见下文).我正在努力解决如何将密钥的值基础提取到变量中.我希望能够做到这样的事情:
<xsl:variable name="foo" select="/root/entry[key = 'foo']/value"/>
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用.这是xml示例.
<?xml version="1.0" encoding="ISO-8859-1"?>
<root>
<entry>
<key>
foo
</key>
<value>
bar
</value>
</entry>
</root>
Run Code Online (Sandbox Code Playgroud)
这个正确的xpath是什么?
在处理读取iPhone应用程序时,它在UIWebView中显示nsdata(html和pdf).我在一些PDF验证逻辑中遇到了麻烦.我有一个NSData对象,我知道它包含一个扩展名为.pdf的文件.我想限制无效的PDF进一步获取.这是我第一次尝试验证代码,它似乎适用于大多数情况:
// pdfData is an NSData *
NSData *validPDF = [[NSString stringWithString:@"%PDF"] dataUsingEncoding: NSASCIIStringEncoding];
if (!(pdfData && [[pdfData subdataWithRange:NSMakeRange(0, 4)] isEqualToData:validPDF])) {
// error
}
Run Code Online (Sandbox Code Playgroud)
不幸的是,几天前上传了一个新的pdf.从某种意义上说,UIWebView会很好地显示它,但它无法通过我的验证测试.我已经将这个问题追溯到一开始就是一堆垃圾字节这一事实,%PDF在第14组十六进制字符中间出现(25或%恰好是第54个字节):
%PDF: 25504446
Breaking PDF: 00010000 00ffffff ff010000 00000000 000f0100 0000b5e0 04000200 01000000 ffffffff 01000000 00000000 0f010000 0099e004 00022550 44462d31 etc...
Run Code Online (Sandbox Code Playgroud)
验证NSData是PDF的最佳做法是什么?
这个特定的PDF可能有什么问题(它声称它是由PaperPort 11.0编码的,不管是什么)?
谢谢,
麦克风
这是一个简单的问题.如何配置Visual Studio 2008以在特定浏览器中构建我的网页?我真的想在所有5个知名浏览器(IE,Firefox,Chrome,Opera和Safari)中构建,但是现在我必须右键单击实际的html文件并在不同的浏览器中打开它们.在Dreamweaver中,有一个简单的下拉列表...视觉工作室有什么?
我正在使用派生类并使用as关键字将基类强制转换为它.当我这样做时,正在调用派生类构造函数,并且它的对象已初始化,但派生实例不会以初始化对象结束(具有空值).这是一个代码示例.
// classes
public class Request
{
public Request();
public Header Header{get;set;}
}
public class CreateRequest : Request
{
public Foo Foo{get;set;}
public Bar Bar{get;set;}
public CreateRequest():base()
{
this.Foo = new Foo();
this.Bar = new Bar();
}
}
public class SomeClass
{
private Response ProcessCreateRequest(Request request)
{
// request comes from a json request
CreateRequest createRequest = request as CreateRequest;
// values of Foo and Bar are null
[...]
}
}
Run Code Online (Sandbox Code Playgroud)
是"as"通常用于派生 - >基础而不是基础 - >派生的问题还是在这里有其他工作吗?
iphone ×2
objective-c ×2
as-keyword ×1
browser ×1
c# ×1
encoding ×1
fiddler ×1
html ×1
ios ×1
ios5 ×1
ipad ×1
key-value ×1
localization ×1
nsdata ×1
pdf ×1
proxy-server ×1
uikeyboard ×1
xml ×1
xpath ×1