假设我有这两个ctors:
public SomeClass(string a, Color? c = null, Font d = null)
{
// ...
}
public SomeClass(string a, Font c = null, Color? d = null)
{
// ...
}
Run Code Online (Sandbox Code Playgroud)
〜我这样做:
SomeClass sc = new SomeClass("Lorem ipsum");
Run Code Online (Sandbox Code Playgroud)
我会得到这个:"错误1以下方法或属性之间的调用是不明确的[...]"
对我来说似乎很明显,我所指的是哪一个并不重要,因为最终结果是相同的(至少在这个特殊情况下,对我而言,这就是现在最重要的事情),那么我有什么选择可以绕过这个?
编辑1:@oltman:简化示例.
我只想写
[...] new SomeClass("Lorem", Color.Green)
Run Code Online (Sandbox Code Playgroud)
代替
[...] new SomeClass("Lorem", null, Color.Green)
Run Code Online (Sandbox Code Playgroud) 我正在寻找与此 SO 问题/答案相当的 dart: 从语言代码中获取该语言中的语言名称
换句话说,我宁愿避免手动检查 langCode=='en' 是否返回 'English' 否则如果 langCode == 'fr' 返回 'French' 等...
我尝试寻找在 Locale、Intl 和 Localizations 类中执行此操作的可能方法,但无济于事。
DropdownButton<String>(
items: langCodesList.map((String value) {
return DropdownMenuItem<String>(
child: Text(value),
value: value,
);
}).toList(),
hint: Text(Localizations.localeOf(context).languageCode),
))
Run Code Online (Sandbox Code Playgroud)
我希望 DDL 显示完整的语言名称。