【发布时间】:2019-09-04 14:43:00
【问题描述】:
我有一个 FAB,每次按下按钮都会更改其图像。
所以在 xml 中:android:src="@drawable/start_img"
然后在按键功能中:
if (start_state) {
...
start_state = false;
fab.setImageResource(R.drawable.second_img);
else {
...
fab.setImageResource(R.drawable.start_img);
start_state = true;
}
但偶尔(我找不到任何类型的模式),FAB 上根本不会显示任何图像。这种状态一直保持到我重新加载片段为止。
我不知道这是怎么发生的。调用fab.setImageResource 只会在这两种情况下发生,而且我并不是在动态创建图像或其他东西,它们是固定的。为什么会消失。
我无法显示应用程序的所有代码。
【问题讨论】:
-
没有看到更多代码,唯一合理的猜测是
start_state没有设置为您期望的值。为什么不在您的代码中添加一些日志,以确保start_state是您到达该部分代码时的样子? -
start_state是什么无关紧要,没有任何代码将图像设置为空图像。 -
如果
start_state为真,并且图像已经是R.drawable.second_img,那么似乎什么都不会发生 -
您需要仔细阅读我所说的内容。我是说根本不会显示任何图像。好像有什么东西叫
fab.setImageResource(None)或类似的东西。
标签: android floating-action-button