我正在尝试使用三个分层的tableViews构建我的第一个应用程序。中间的VC具有两个保护功能,一个为保护功能做好准备。
drop_down= driver.find_element_by_id("select-size-bulk-asin")
drop_down.click()
actions = ActionChains(driver)
actions.send_keys(Keys.ARROW_DOWN)
actions.send_keys(Keys.ARROW_DOWN)
actions.send_keys(Keys.ENTER)
actions.perform()
就是这样。我可以解决这个问题,因为我的应用程序都使用了这两个函数,因为它只使用顶部的那个。
答案 0 :(得分:1)
问题是,如果您想连接到TransactionViewController,则该函数已经返回,因为segue.destination不是AddMemberViewController。
相反,您应该给您的segues不同的标识符,并在output: [object Array]: ["A", "b", "d", "u", "s", "a", "l", "a", "m", " ", "A", "b", "u", "b", "a", "k", "a", "r", ",", "M"...]
0: "A"
1: "b"
2: "d"
3: "u"
4: "s"
5: "a"
6: "l"
7: "a"
8: "m"
9: " "
10: "A"
11: "b"
12: "u"
13: "b"
14: "a"
15: "k"
16: "a"
17: "r"
18: ","
19: "M"
20: "a"
21: "v"
22: "i"
23: "s"
24: "s"
25: "o"
26: "u"
27: "l"
28: "k"
29: "i"
30: "n"
length: "31"
中要求它们。像这样:
public class Example
{
/// <summary>
/// Cannot modify this function.
/// </summary>
private void Save<T>(T data) where T : struct { }
public void PlaceA(IToIntCompatible input)
{
typeof(Example)
.GetMethod("Save")
.MakeGenericMethod(input.GetType())
.Invoke(this, new object[] { input });
}
public void PlaceB(IToIntCompatible input)
{
typeof(Example)
.GetMethod("Save")
.MakeGenericMethod(input.GetType())
.Invoke(this, new object[] { input });
}
}
答案 1 :(得分:0)
只要让守卫换成:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if let destination = segue.destination as? AddMemberViewController {
destination.club = club
} else if let destination = segue.destination as? TransactionViewController, let selectedRow = self.tableViewMember.indexPathForSelectedRow?.row {
destination.member = members[selectedRow]
}
}
答案 2 :(得分:0)
prepare(for
被要求用于一个特定的segue,因此同时执行两个guard let
不必要地昂贵。
通常,您要使用identifier
语句检查segue的switch
,用实际值替换文字标识符
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
switch segue.identifier {
case "memberSegue":
let destination = segue.destination as! AddMemberViewController
destination.club = club
case "transactionSegue":
guard let selectedRow = self.tableViewMember.indexPathForSelectedRow?.row else { return }
let destination = segue.destination as! TransactionViewController
destination.member = members[selectedRow]
default: break
}
}