我使用以下代码来获取在线图像的主色,但调色板颜色保持为空。我怎么解决这个问题?N:B:如果我使用本地图像源 AssetImage("source_path"),它就可以工作。
class HomePageUI extends StatefulWidget {
final HomeData _homeData;
HomePageUI(this._homeData);
@override
_HomePageUIState createState() => _HomePageUIState();
}
class _HomePageUIState extends State<HomePageUI> {
PaletteColor paletteColor;
@override
void initState(){
super.initState();
_updatePalettes();
}
_updatePalettes() async{
final PaletteGenerator paletteGenerator = await PaletteGenerator.fromImageProvider(
NetworkImage(NetworkConfig.getImageUrl(widget._homeData.trending[1].image)),
size: Size(200,100)
);
paletteColor = paletteGenerator.darkMutedColor;
//Here paletteColor is shown null value
}
}
Run Code Online (Sandbox Code Playgroud) 在 OCaml 的 utop 中,我可以使用 alt+left 或 alt+right 在自动完成部分中移动,但是当我单击选项卡自动完成时,将使用第一个选择。我该怎么办?
我想理解为什么对 Traits 的讨论似乎从来不包括与 Require 的比较,而是总是与继承进行比较。
据我了解,Require 本质上与运行时的复制/粘贴相同,并且 Require_Once 确保代码不重复。特征通常也被称为与复制/粘贴几乎相同。
也就是说,Require 和 Include 可以在条件逻辑中使用,因此在某些情况下它们可以成为 Trait 的更好替代方案。Traits 具有多态性和其他理想的功能,而这些功能是严格复制代码所无法获得的。例如,能够抽象特征中的函数,然后选择性地在容器类中重写。
这两个“代码包含/导入”功能在范围方面具有相似的行为,例如 $this。
但一个明显的区别是 Include/Require 代码默认会进入 HTML 处理,并且 <?php 是可选的,具体取决于上下文,通过 Trait 我们知道代码必须是 PHP 并且必须以 <?php 为前缀。
所以对我来说,Trait 更像是一个更高级别的 OOP 工具,而 Require 是一个不了解 OOP 细节的语言级指令。然而,在许多情况下,使用 Require 代码似乎比使用 Trait 来包含相同的代码同样简单和有用。
我希望有人能够提供清晰的示例,其中将选择一个而不是另一个,以便更明显地应该使用哪一个。除了我所引用的内容之外,还有更多细节。我是否已经走在做出这些选择的正确道路上?比这更简单,还是更复杂?比较表将是理想的。