默认情况下,似乎logcat会截断它认为"太长"的任何日志消息.这在Eclipse内部以及在命令行上使用logcat运行时都会发生adb -d logcat
,并且会截断一些重要的调试消息.
有没有办法增加logcat支持的最大字符串长度,以使其停止截断调试信息?在官方文件意味着可能没有,但也许logcat的支持一些额外的选项不是有提及?
我想要做的是在Xcode的界面构建器中将组件/视图从一个超级视图拖动到另一个超级视图,而不必重置其帧/位置.
执行此操作时,Xcode的默认行为似乎是使视图在其新的超视图中垂直和水平移动,同时保留其尺寸.这非常令人沮丧,因为这意味着需要在新的superview中手动重新定位视图.但是在我移动它之前我已经正确定位了,所以我希望Xcode能够记住它的框架的所有属性,而不仅仅是它的宽度/高度.这可能吗?
我正在尝试将CSS样式应用于从Microsoft Word文档生成的某些HTML片段.Word生成的HTML相当残酷,并且包含许多内联样式.它是这样的:
<html>
<head></head>
<body>
<center>
<p class=MsoNormal><b style='mso-bidi-font-weight:normal'><span
style='font-size:12.0pt;line-height:115%;font-family:"Times New Roman"'>Title text goes here<o:p></o:p></span></b></p>
<p class=MsoNormal style='margin-left:18.0pt;line-height:150%'><span
style='font-size:12.0pt;line-height:150%;font-family:"Times New Roman"'>Content text goes here.<o:p></o:p></span></p>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
......而且非常简单,我想设置标题部分的第一个字母.它只需要更大和不同的字体.要做到这一点,我试图使用:first-letter
选择器,有类似的东西:
p b span:first-letter {
font-size: 500px !important;
}
Run Code Online (Sandbox Code Playgroud)
但它似乎没有奏效.这是一个演示这个的小提琴:
任何想法有什么问题/如何正确地设置标题部分的第一个字母?我可以对标记进行微小的更改(比如在事物周围添加包装器div),尽管并非没有困难.
所以我想知道,在JavaScript中是否有任何可行的方法来查看有关您未明确了解的预定超时和间隔的信息(我知道setTimeout
并setInterval
返回一个可用于引用已调度实例的句柄,但请说明这一点由于某种原因无法使用)?例如,有没有办法使用像Chrome的JavaScript控制台这样的工具来确定任意页面上当前处于活动状态的超时,什么时候它们将会触发,以及在它们触发时将执行哪些代码?更具体地说,一个页面刚刚执行了以下JavaScript:
setTimeout("alert('test');", 30000);
Run Code Online (Sandbox Code Playgroud)
是否有一些我可以执行的代码告诉我浏览器将在alert('test');
30秒后执行?
似乎理论上应该有某种方式来获取这些信息,因为如果你知道在哪里看,JavaScript中的所有内容都会被公开为可公开访问的属性,但是我不记得曾经做过这样的事情或者看过它由别人.
假设我有一个View
被另一个部分掩盖的Android View
.例如,假设掩蔽视图在其中心具有透明的矩形"窗口",并且我的视图在窗口下方居中并且具有大于窗口尺寸的尺寸.在这种情况下,视图的一些矩形部分将是可见的,其余部分被掩模遮挡.
所以我的问题是,是否有任何直接的方法来检索可见区域的位置和尺寸,而无需访问掩蔽视图本身(所以不知道掩模的"窗口"本身有多大)?
我试过调用getLocalVisibleRect()
,听起来很有希望,但这似乎只是返回视图的布局矩形而不是实际可见的矩形.
所以我有一个网站使用cookie记住跨访问的当前布局状态.一切是伟大的工作,直到我加入了Facebook的"喜欢"按钮,其生成允许用户共享一定的UI状态(有点混乱,但没有真正的问题有关)链接的网站.
问题是,当我通过其中一个Facebook链接访问该网站时,我的布局cookie的第二个副本似乎被创建(如同,我看到两个具有相同名称和不同值的cookie).这不会太糟糕,除了重复cookie的值似乎被卡住,再加上当用户返回站点时,浏览器会记住卡住的值而不是最近设置的值(所以它的类型就像有一个"好"的cookie我仍然可以使用,而一个"坏"的我不能,并且浏览器喜欢记住"坏"cookie而不是"好"cookie.这打破了我的布局跟踪/记忆功能.
所以这里有两个问题:
如果我在访问处于卡住状态的页面后使用Chrome的开发者控制台,我可以看到document.cookie
(添加了格式以提高可读性):
layoutState=[{'id':6,'x':8,'y':1525,'z':4,'url':'undefined'}, {'id':1,'x':625,'y':709,'z':2,'url':'undefined'}, {'id':2,'x':8,'y':37,'z':3,'url':'undefined'}, {'id':3,'x':625,'y':1179,'z':5,'url':'undefined'}, {'id':4,'x':626,'y':37,'z':1,'url':'undefined'}, {'id':5,'x':626,'y':357,'z':1000000,'url':'http://m.xkcd.com/303/'}];
WibiyaNotification1=1;
WibiyaNotification213286=213286;
WibiyaNotification213289=213289; wibiya756904_unique_user=1;
JSESSIONID=DONTHIJACKMEPLEASE;
WibiyaProfile={"toolbar":{"stat":"Max"},"apps":{"openApps":{}},"connectUserNetworks":[null,null,null,null,null,null]};
WibiyaLoads=59;
layoutState=[{'id':6,'x':8,'y':1525,'z':4,'url':'undefined'}, {'id':1,'x':625,'y':709,'z':2,'url':'undefined'}, {'id':2,'x':8,'y':37,'z':3,'url':'undefined'}, {'id':3,'x':625,'y':1179,'z':5,'url':'undefined'}, {'id':4,'x':626,'y':37,'z':1,'url':'undefined'}, {'id':5,'x':626,'y':357,'z':6,'url':'http://m.xkcd.com/303/'}]"
Run Code Online (Sandbox Code Playgroud)
忽略Wibiya cookie和JSESSIONID.被卡住的Cookie是第一个"layoutState"实例,我仍然可以操纵JavaScript中的一个是第二个"layoutState"实例.如果我改变一些事情,这就是我得到的:
layoutState=[{'id':6,'x':8,'y':1525,'z':4,'url':'undefined'}, {'id':1,'x':625,'y':709,'z':2,'url':'undefined'}, {'id':2,'x':8,'y':37,'z':3,'url':'undefined'}, {'id':3,'x':625,'y':1179,'z':5,'url':'undefined'}, {'id':4,'x':626,'y':37,'z':1,'url':'undefined'}, {'id':5,'x':626,'y':357,'z':1000000,'url':'http://m.xkcd.com/303/'}];
WibiyaNotification1=1;
WibiyaNotification213286=213286;
WibiyaNotification213289=213289;
wibiya756904_unique_user=1;
JSESSIONID=DONTHIJACKMEPLEASE;
WibiyaProfile={"toolbar":{"stat":"Max"},"apps":{"openApps":{}},"connectUserNetworks":[null,null,null,null,null,null]};
WibiyaLoads=59;
layoutState=[{'id':1,'x':8,'y':39,'z':1000000,'url':'undefined'}]
Run Code Online (Sandbox Code Playgroud)
第二个'layoutState'具有我希望浏览器记住的正确信息.然而,浏览器实际记得的是第一个实例的价值.
我试过解封完全饼干,导致二审消失了,但没有我这样做似乎摆脱了一审.我在所有主流浏览器(Chrome,Firefox,IE)中都有相同的行为,这让我怀疑我必须在这里做一些根本错误的事情,但我不确定它是什么.
您可以在此处查看网站本身.或点击此处通过Facebook链接访问它(应生成卡住的cookie).任何帮助深表感谢.
更新:
因此,可靠地重现错误的步骤如下:
我还注意到,通过Facebook风格的URL重新访问该网站可以清除/重置卡住的cookie.所以,它就像浏览器是保持一个独立的cookie为每个URL路径,或什么的,而不是让根页面访问被对方URL路径上设置cookie.我以为我可以通过明确设置path=/
cookie 来解决这个问题,但没有骰子.
更新2:
我发现如果我设置cookie的路径和域,我会在所有浏览器中得到不同的行为:
我正在查看基于drupal的webapp的慢查询日志,并且行看起来像这样:
# Query_time: 3257 Lock_time: 0 Rows_sent: 272 Rows_examined: 272
# Query_time: 1654 Lock_time: 0 Rows_sent: 222 Rows_examined: 222
# Query_time: 3292 Lock_time: 0 Rows_sent: 269 Rows_examined: 269
# Query_time: 1029 Lock_time: 0 Rows_sent: 172 Rows_examined: 172
# Query_time: 2126 Lock_time: 0 Rows_sent: 251 Rows_examined: 251
# Query_time: 1731 Lock_time: 0 Rows_sent: 229 Rows_examined: 229
Run Code Online (Sandbox Code Playgroud)
这些时间是否表明相关查询需要执行1到3秒(慢但不可怕),或者介于1,000到3,000秒之间(完全不可接受)?我知道该long_query_time
选项是以秒为单位指定的,但日志消息是遵循相同的约定,还是使用毫秒代替?
编辑:这是MySQL版本5.0.45.
问题标题基本上都说明了一切.在JPA/Hibernate中是否可以优雅地阻止从数据库中删除实体?我想要的是将实体标记为"隐藏"而不是实际删除它.
我还希望Cascade
保留语义,这样如果我尝试删除拥有某个其他实体集合的实体,则拥有实体和其集合中的每个实体都被标记为隐藏,而我不需要任何额外的工作,超出实现@PreRemove
阻止删除的处理程序并将实体标记为隐藏.
这是可能的,还是我需要弄清楚其他方法?
在Groovy中,return语句是可选的,允许您编写如下方法:
def add(a, b) {
a + b
}
Run Code Online (Sandbox Code Playgroud)
...添加a
并将b
结果返回给调用者.
但是,我想知道当方法有多个返回"语句"时语义是什么.例如,在Java中,您可能具有:
String append(String a, String b) {
if (a == null) {
return b;
}
return a + b;
}
Run Code Online (Sandbox Code Playgroud)
这可以(假设)被翻译成Groovy,如:
def append(a, b) {
if (! a) {
b
}
a + b
}
Run Code Online (Sandbox Code Playgroud)
但是,在这种情况下,Groovy如何知道应该返回语句b
内部if
?或者不是吗?我假设Groovy不能简单地处理任何结果未被使用的语句return
,对吗?在这种情况下,"可选返回"功能的行为是否有明确定义的语义?
我正在查看另一个开发人员提交给项目的差异,他们有很多代码可以做到!!<some BOOL value>
.实际上,这似乎是实现布尔getter和setter的标准模式.他们已经实现了以下代码:
- (BOOL) hasId {
return !!hasId_;
}
- (void) setHasId:(BOOL) value {
hasId_ = !!value;
}
Run Code Online (Sandbox Code Playgroud)
我以前从未见过这种模式,我想知道使用它是否有任何好处.双重否定是否有用?