所以我的概念很简单,我有一个文本字段和一个标有"下一步"的按钮.如果用户没有在文本字段中放置任何内容,我希望将"下一步"按钮禁用给用户.为此,我运行了以下代码:
@IBAction func nextButton(sender: UIButton) {
if textField.text.isEmpty {
buttonLabel.userInteractionEnabled = false
}
}
Run Code Online (Sandbox Code Playgroud)
这会根据需要禁用按钮,但问题是,如果文本然后在文本字段中输入,则按钮仍处于禁用状态.我已经尝试在"if"语句之后添加"else"语句来反转我所说的是否有效,但事实并非如此.
任何帮助非常感谢.
缺口
我的代码:
import UIKit
class ViewController: UIViewController, UITextFieldDelegate, UIPickerViewDataSource, UIPickerViewDelegate {
func imageEffect() {
// Set vertical effect for background
var verticalMotionEffect : UIInterpolatingMotionEffect =
UIInterpolatingMotionEffect(keyPath: "center.y",
type: .TiltAlongVerticalAxis)
verticalMotionEffect.minimumRelativeValue = -20
verticalMotionEffect.maximumRelativeValue = 20
// Set horizontal effect for background
var horizontalMotionEffect : UIInterpolatingMotionEffect =
UIInterpolatingMotionEffect(keyPath: "center.x",
type: .TiltAlongHorizontalAxis)
horizontalMotionEffect.minimumRelativeValue = -20
horizontalMotionEffect.maximumRelativeValue = 20
// Create group for background to combine both …Run Code Online (Sandbox Code Playgroud) 我读到使用seq_along()可以更好地处理空的情况,但这个概念在我的脑海中并不是那么清晰。
例如,我有这个数据框:
df
a b c d
1 1.2767671 0.133558438 1.5582137 0.6049921
2 -1.2133819 -0.595845408 -0.9492494 -0.9633872
3 0.4512179 0.425949910 0.1529301 -0.3012190
4 1.4945791 0.211932487 -1.2051334 0.1218442
5 2.0102918 0.135363711 0.2808456 1.1293810
6 1.0827021 0.290615747 2.5339719 -0.3265962
7 -0.1107592 -2.762735937 -0.2428827 -0.3340126
8 0.3439831 0.323193841 0.9623515 -0.1099747
9 0.3794022 -1.306189542 0.6185657 0.5889456
10 1.2966537 -0.004927108 -1.3796625 -1.1577800
Run Code Online (Sandbox Code Playgroud)
考虑这三个不同的代码片段:
# Case 1
for (i in 1:ncol(df)) {
print(median(df[[i]]))
}
# Case 2
for (i in seq_along(df)) {
print(median(df[[i]]))
} …Run Code Online (Sandbox Code Playgroud) 考虑如下代码:
<p> </p><!-- comment -->
<span></span><br />
<div><span class="foo"></span></div>
Run Code Online (Sandbox Code Playgroud)
在浏览器上它会有效地呈现为一段空白。
我想知道,考虑到该标记或类似的标记,是否有一种简单的编程方法来检测删除了空格的该代码的最终结果是一个空字符串。
这里的实现是 JavaScript,但我也对一种更通用(与语言无关)的解决方案感兴趣(如果存在)。
请注意,仅删除标签并查看是否保留任何文本并不是真正的解决方案,因为有大量标签最终会呈现可见内容(例如 img、hr 等)。
我不喜欢未初始化的 VBA 数组,因为每次使用之前都需要检查数组是否已初始化UBound()或For Each避免异常,并且没有本机 VBA 函数来检查它。这就是为什么我初始化数组,至少用a = Array(). 这在大多数情况下消除了额外检查的需要,因此一维数组没有问题。
出于同样的原因,我尝试创建一个空的二维数组。不可能简单地做ReDim a(0 To -1, 0 To 0),转置一维空数组或类似的东西。我偶然遇到的唯一方法是使用MSForms.ComboBox,将空数组分配给.List属性并将其读回。这是在 Excel 和 Word 中工作的示例,您需要插入UserForm到 VBA 项目中,放置ComboBox在其上,并添加以下代码:
Private Sub ComboBox1_Change()
Dim a()
ComboBox1.List = Array()
a = ComboBox1.List
Debug.Print "1st dimension upper bound = " & UBound(a, 1)
Debug.Print "2nd dimension upper bound = " & UBound(a, 2)
End Sub
Run Code Online (Sandbox Code Playgroud)
组合更改后的输出为:
1st dimension upper bound = -1
2nd …Run Code Online (Sandbox Code Playgroud) 今天我发现我的一些stopifnot()测试失败了,因为传递的参数评估为空的逻辑向量。
下面是一个例子:
stopifnot(iris$nosuchcolumn == 2) # passes without error
Run Code Online (Sandbox Code Playgroud)
这是非常不直观的,似乎与其他一些行为相矛盾。考虑:
isTRUE(logical())
> FALSE
stopifnot(logical())
# passes
Run Code Online (Sandbox Code Playgroud)
因此stopifnot(),即使此参数不是TRUE。
但此外,上述行为对于不同类型的空向量是不同的。
isTRUE(numeric())
> FALSE
stopifnot(numeric())
# Error: numeric() are not all TRUE
Run Code Online (Sandbox Code Playgroud)
以上是否有一些逻辑,还是应该将其视为错误?
我在 MongoDB 中有一个集合,其中包含一个字段“events”,它是一个数组。我需要为此编写一个聚合查询来检查事件数组不为空,但找不到方法来执行此操作。
我想要这样的东西:
db.collection.aggregate([
{
$match: {
events: {
"$empty": false
}
}
}
]);
Run Code Online (Sandbox Code Playgroud) 我有某些场景(例如,保存 Sql 参数的自定义类),其中可能需要也可能不需要变量。传统上,我总是定义这些类型Guid?,并myGuid.HasValue在使用之前检查有效值。
当然,在实践中,我也可以使用常规Guids 并使用 执行有效值检查myGuid == Guid.Empty。
为了便于阅读,我更喜欢第一种用法,因为它感觉更干净,但如果有人能建议其中一种方法是否比另一种更好(更快、更快或更正确),我将不胜感激。
我只是在应用程序中实现了登录功能,所以我想知道是否有一种方法可以检查记录器是否为空。
我要记住的是在脚本中设置两个处理程序:
WARNINGDEBUG在脚本末尾,我需要检查CONSOLElogger是否为空。这意味着在运行期间,level >= WARNING记录了一些消息,在这种情况下,我想将调试级别的日志文件发送smtp到我的邮箱。
是否可以在python脚本本身内部进行此检查,而无需将Shell重定向到文件?
更新 - 2016年3月24日
我想概括一下这些问题,但看起来它已被理解为具体,我的不好.这个答案是对我之前使用的例子的100%解决方案.
请参阅此CodePen
所以Style空文本框背后的想法是
textbox:empty ~ label {
// position it as floating label
}
Run Code Online (Sandbox Code Playgroud)
看起来现在不可能在CSS中,可能在将来.
更新 - 2016年3月23日
这个答案很接近.
但是使用:invalid不是一种选择,因为它使字段成为必需的required=true属性.

请使用javascript 参考此CodePen以获得所需的行为.演示是为了解释它应该如何表现,使用javascript不是预期的行为.使用的颜色也只是为了对比,与验证无关
有没有办法用CSS设置空文本框的样式?
我试过,不幸的是总是被检测为空; 因为它没有子节点或文本节点.确切地说,是一个自动关闭的标签.:empty pseudo-classtextboxtextbox
:empty伪类表示任何没有子元素的元素.仅考虑元素节点和文本(包括空格).
任何指针都会有所帮助.
我想创建一个动态mongodb查询,如果条件为真,则插入其聚合的每个部分,否则不注入该部分.
例如,我想检查时间是否在凌晨1点到8点之间.如果是,则将定义的数组传递给mongodb查询,否则不传递任何内容.
if ($this->Not_in_1_8 == true) {
$this->N_IN_1_8 = array('dont_show_between_1_n_8' => array('$ne' => true));
}else {
$this->N_IN_1_8 = null;
}
$MidnightCheck = $this->N_IN_1_8;
$this->campaign = Bcamp::raw(function ($collection) use ($seat_category_list, $banner_size, $seat_filter_list, $gold_network, $MidnightCheck) {
return $collection->aggregate([
[
'$match' => [
'$and' => [
["targets.cats" => [
'$in' => $seat_category_list
]
],
['banners.' . $banner_size => [
'$exists' => true
]
],
['href' => [
'$nin' => $seat_filter_list
]
],
['targets.gold_network' => [
'$eq' => $gold_network
]
],
['status' => [ …Run Code Online (Sandbox Code Playgroud)