小编Jim*_*ler的帖子

如何获取Webview iframe链接以启动浏览器?

我正在使用WebView显示一个页面,其中html包含一个iframe,其中src ="xxxxx.php".

此iframe作为带有基础链接的广告图片加载.如果我点击该图像(链接),它会尝试在原始iframe中加载新页面(在该小空间中没有显示太多内容).我想要发生的是点击链接在新的浏览器窗口中打开引用页面,保持我的应用程序不变.

如果我使用Android浏览器显示原始页面并单击此iframe,则会将链接加载为新页面.如何使用WebView获得相同的行为?使用带有shouldOverrideUrlLoading()的WebViewClient似乎不会被iframe链接调用.

iframe android webview

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

为什么Firefox似乎会截断嵌入式SVG?

将这段SVG直接嵌入到XHTML的主体中 DTD XHTML 1.0 Strict

<svg>
    <circle cx="150" cy="150" r="150"/>
</svg>
Run Code Online (Sandbox Code Playgroud)

使用Chrome 在http://jsfiddle.net/3NXbL上查看此示例(我使用的是11.0.696.57)可以看到整个圆圈.

使用Firefox查看相同的jsfiddle(我使用的是4.0.1).可以看到相同的圆圈,但在垂直方向上切成两半.

(注意我在其他版本的Firefox上看到了完全相同的行为,不同的doc类型和包含SVG内容的不同方法,但这被简化为jsfiddle的一个非常简单的例子)

什么是Firefox为网页中的SVG内容分配维度的规则?有没有简单的方法可以让它们与其他浏览器保持一致?您如何修改我的jsfiddle示例以查看整个圆圈?

browser firefox svg

10
推荐指数
1
解决办法
1726
查看次数

iPhone等:如何判断设备是否有摄像头?

版本3.1.3如果相关.

有这个建议现在可以运作,但将来呢?

NSString *device = [UIDevice currentDevice].model;

if([device isEqualToString:@"iPhone"])
Run Code Online (Sandbox Code Playgroud)

iphone

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

什么是Scala'杀手级应用'?

我是一名Java开发人员,正在考虑投入时间学习Scala以开发未来的应用程序.我已经阅读了很多关于Scala优于Java的优点,但它们有点抽象,真的在情感上把它卖给我.

有人可以建议一个应用程序的例子,它真的适合用Scala开发,而不是Java吗?

scala

9
推荐指数
2
解决办法
1204
查看次数

android.intent.action.SCREEN_ON不能用作接收器意图过滤器

我正在尝试在打开屏幕时调用BroadcastReceiver.在我的AndroidManifest.xml中,我指定了:

                <receiver android:name="IntentReceiver">
                    <intent-filter>
                            <action android:name="android.intent.action.SCREEN_ON"></action>
                    </intent-filter>
                </receiver>
Run Code Online (Sandbox Code Playgroud)

然而,似乎永远不会调用接收器(断点不会触发,忽略日志语句).我已经为BOOT_COMPLETED换了SCREEN_ON进行测试,这确实被调用了.

这是一个1.6(SDK级别4)项目.

谷歌代码搜索显示了这一点,我下载了项目并同步了它,将其转换为使用最新工具,但它也无法拦截该事件.

http://www.google.com/codesearch/p?hl=en#_8L9bayv7qE/trunk/phxandroid-intent-query/AndroidManifest.xml&q=android.intent.action.SCREEN_ON

这可能不再支持了吗?

以前我已经能够通过调用Context.registerReceiver()来成功拦截此事件

registerReceiver(new BroadcastReceiver() {

  @Override
  public void onReceive(Context context, Intent intent) {
    // ... 
  }
}, new IntentFilter(Intent.ACTION_SCREEN_ON));
Run Code Online (Sandbox Code Playgroud)

然而,这是由一个长寿服务.遵循CommonsWare的sage建议,我选择尝试删除长期服务并使用不同的技术.但是我仍然需要检测屏幕上的事件.

android broadcastreceiver

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

是什么解释了Firefox和Safari对包含多个#符号的用户提供的URI的不同处理方式?哪个是对的'?

在Firefox 4.0.1中,将以下内容粘贴到地址栏中

http://www.w3.org/#one#two
Run Code Online (Sandbox Code Playgroud)

请注意,浏览器导航到w3.org首页,地址栏仍然可以读取

http://www.w3.org/#one#two
Run Code Online (Sandbox Code Playgroud)

在Safari 5.0.4中也这样做.请注意,浏览器也会导航,但地址栏文本会被修改为读取

http://www.w3.org/#one%23two
Run Code Online (Sandbox Code Playgroud)

请注意,字符串中哈希的第一个哈希外观未被更改,但第二个哈希值被修改为编码格式(也称为"转义")%23.

假设Safari正在尝试将用户提供的URI转换为符合其有效URI概念的链接,这似乎是合理的.在这种情况下,Firefox不进行转换.

我想说明行为上的差异.

http://www.ecma-international.org/publications/standards/Ecma-262.htm上的文件是对有效URI所采用形式的一种引用.在第15.1.3.1节中,它说明了浏览器对URI的转义.

字符"#"不是从转义序列解码的,即使它不是保留的URI字符.

这可以说是它在整个URI字符串中引用#符号,而不仅仅是第一次出现.

总之,我的问题是:

  • 这两种形式的链接是否符合有效URI的最新标准?
  • 如果它们都有效,哪种浏览器行为最合适?

browser safari firefox http

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

如何检测屏幕何时开启?

正如前一个问题中所提到的,如果android.intent.action.SCREEN_ON没有长期存在Service(沮丧),我很难拦截所有事件.

我可能能够解决这个问题,如果我可以在任何给定时间点亮屏幕时完成工作Service.

任何人都可以建议一个方法调用,将返回此信息?1.5以上.

android

5
推荐指数
2
解决办法
1724
查看次数

如何强制打开大括号来共享以前的代码行?

使用Uncrustify工具我想应用1TBS样式,它放置这样的大括号:

if (x < 0) {
    printf("Negative");
}
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?我似乎找不到合适的选择.

uncrustify

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

在同一个'alloc'ed对象上多次调用初始值设定项是否安全?

我可以用它构造一个UIImageView对象myImageView = [[UIImageView alloc] initWithImage:image];

以下应用程序活动影响显示,如果我想更改UIImageView上的图像.我可以通过重新分配来实现myImageView.image = someNewImage.但是,这似乎不会更新框架尺寸.我可以手动修改它们,但我在实践中观察到调用[myImageView initWithImage:someNewImage]对我来说是这样的,并且具有更好的优点.

但是我不确定在Objective C中是否正式违反协议,在由单个alloc构造的对象上多次调用init方法.我不会使用它,除非它是安全的(保证不会崩溃或导致泄漏).有证据表明它不安全吗?

我到目前为止的研究......

本文提供了有关对象的"alloc"和"init"的一般细节

http://developer.apple.com/library/mac/documentation/cocoa/Conceptual/ObjectiveC/Articles/ocAllocInit.html

这与SO问题有关

为什么在Objective-C中单独调用alloc和init?

这篇博客文章警告对象的供应商,他们的初始化方法可能会被初始化过程的影响多次调用.

http://www.friday.com/bbum/2009/09/06/iniailize-can-be-executed-multiple-times-load-not-so-much/

objective-c

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

调整WebView的文本大小?

我想尽可能容易地按比例减小WebView中所有文本的大小.我试过android:textSize="..."没有成功.Api等级7.

android

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