小编Bre*_*uro的帖子

在初始化之前通过引用传递的变量p

我有一个Human类,其功能可以接收任意数量的人,并确定某人是否比这些人中的任何人年长,然后返回一个他/她年龄大的人的数组.

func isOlderThan(people: Human...) -> [Human] {
    var p: [Human]

    for person in people {
        if age > person.age {
            p.append(person)
        }
    }
    return p
}
Run Code Online (Sandbox Code Playgroud)

然而在

p.append(person)
Run Code Online (Sandbox Code Playgroud)

我收到了错误

Variable p passed by reference before being initialized
Run Code Online (Sandbox Code Playgroud)

谁知道为什么会这样?谢谢!

pass-by-reference swift

23
推荐指数
1
解决办法
2万
查看次数

在操作栏的右上角添加一个按钮

有没有办法可以在我的右上角添加一个按钮ActionBar,比如默认设置Button在哪里?我删除了设置,Button但我想在其中添加自定义Button.

android android-button android-actionbar

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

将标题添加到导航栏的左侧

是否可以在导航栏的左侧添加标题?我知道如何在中心添加标题但是当我尝试在左侧添加一个标题时我什么也看不见.这是我的代码:

self.navigationItem.leftBarButtonItem?.title = "Elapsed Time: 0:00"
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助.

xcode uinavigationcontroller navigationbar ios swift

15
推荐指数
3
解决办法
2万
查看次数

Firestore - 如何在将文档添加到集合后获取文档ID

有没有办法获取将文档添加到集合后生成的文档ID?

如果我将一个文档添加到代表社交媒体应用程序中"帖子"的集合中,我想获取该文档ID并将其用作另一个集合中另一个文档中的字段.

如果我无法获取添加文档后生成的文档ID,我应该只计算一个随机字符串并在创建文档时提供id吗?这样我可以使用与我的其他文档中的字段相同的字符串?

快速结构示例:

POST (collection)
    Document Id - randomly generated by firebase or by me
USER (collection)
    Document Id - randomly generated by firebase
       userPost: String (this will be the document id 
                         in the post collection that I'm trying to get)
Run Code Online (Sandbox Code Playgroud)

firebase firebase-realtime-database google-cloud-firestore

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

EditText OnClickListener 需要两次点击才能工作

EditTexts我的活动中有 4 个。每个都有一个OnClickListener,当被调用时会为我选中一个复选框。但是,当我第一次按下 时EditTextEditText变为蓝色,但复选框未选中。只有当我再次按下它时OnClickListener才会生效并选中该框。

有人知道为什么是这样吗?

示例代码:

public View.OnClickListener respiratoryOnClickListenerv(final View v) {
    View.OnClickListener listener = new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            CheckBox respiratoryCheckbox = (CheckBox) v.findViewById(R.id.vitals_2);
            respiratoryCheckbox.setChecked(true);
            respiratoryCheckbox.callOnClick();
        }
    };
    return listener;
}


respiratoryEditText.setOnClickListener(respiratoryOnClickListenerv(rootView));
Run Code Online (Sandbox Code Playgroud)

java android android-edittext

7
推荐指数
1
解决办法
2950
查看次数

将数组中的字符转换为整数

即使我搜索了文档,我似乎无法弄清楚如何做到这一点.

我试图弄清楚如何将数组中索引处的字符转换为整数.

例如,假设我有一个名为"容器"的字符数组,我无法弄清楚该怎么做:

var number:Integer = container[3]
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助!

xcode ios swift

6
推荐指数
2
解决办法
8811
查看次数

[Card]类型的不可变值仅具有名称附加的变异值

我有一个Card类和一个Player类.

在我的Player类中,我有一个函数,它接受一个[Card]数组并添加一个Card.

但是,当我打电话给...

myCardArray.append(myCard)
Run Code Online (Sandbox Code Playgroud)

......我收到了错误

Immutable value of type [Card] only has mutating values of name append
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚为什么会这样?为什么这是不可改变的?

swift

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

GraphView更改x和y轴范围

我有一个线图,我每次用户输入数字时都会添加数据.用户输入一个数字50次,所以我希望x轴的范围从1到50,增量为1.在y轴上,我希望它的范围是2 - 15(用户输入2到15之间的数字)增量为1.我真的不确定如何做到这一点,这就是我所拥有的:

    graph = (GraphView) findViewById(R.id.session_graph);
    series = new LineGraphSeries<DataPoint>(new DataPoint[] {});
    graph.addSeries(series);

    graph.getViewport().setMinX(1);
    graph.getViewport().setMaxX(50);
    graph.getViewport().setMinY(2.0);
    graph.getViewport().setMaxY(15.0);
Run Code Online (Sandbox Code Playgroud)

但是,当我启动我的应用程序时,x和y轴的范围为0 - 2,间隔为0.5

android graph android-graphview

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

SpriteKit 捏合缩放相机

我似乎无法在任何地方找到如何实现相机捏合以放大 SpriteKit。

在我的 GameScene 中,我似乎可以在相机上运行放大操作:

let cameraNode = SKCameraNode()

cameraNode.position = CGPoint(x: self.frame.midX, y: self.frame.midY)
addChild(cameraNode)
camera = cameraNode

let zoomInAction = SKAction.scale(to: 0.5, duration: 1)
cameraNode.run(zoomInAction)
Run Code Online (Sandbox Code Playgroud)

但我似乎无法弄清楚如何将其转换为捏缩放功能

ios sprite-kit swift

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

在数组上迭代时添加元素

我有一个循环,遍历数组中的每个元素。在一定条件下,我在循环内向该数组添加了另一个元素。但是,循环未考虑该新元素。如果数组中最初有6个项目,并且在循环遍历时,我又增加了2个,它仍然仅循环执行6次。我怎样才能解决这个问题?

for ingredient in ingredientList {
    if ingredient.name == "banana" {
        var orange = Ingredient(name: "orange")
        ingredientList.append(orange)
    }
    if ingredient.name == "orange" {
        // this never executes
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我的成分之一是香蕉,请在列表中添加橙色。但是,循环甚至不会考虑新添加的元素。我怎样才能完成这样的事情?为什么不起作用?

arrays loops swift

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