我为我的应用创建了2个主题,一个是深色主题,一个是浅色主题。
这些主题可以在除三星s10手机以外的任何手机上完美使用。
在三星s10手机上,当首次启动该应用程序且调用SystemChrome.setSystemUIOverlayStyle
时,导航栏的图标颜色未填充,看起来只有边框是我定义的颜色:
一旦我跳出应用程序,然后又回到图标中,它们就会看起来应有的样子。
启动应用程序时,这也是在其他任何手机上的外观-符合预期(但不适用于三星s10)。
这是主题:
final DarkTheme = ThemeWrapper(
themeData: ThemeData(
brightness: Brightness.dark,
accentColor: const Color(0xFF1976D2)
),
systemOverlay: SystemUiOverlayStyle(
systemNavigationBarColor: Color(0xFF222222),
systemNavigationBarIconBrightness: Brightness.light,
statusBarColor: Color(0xFF222222),
),
);
这就是我应用systemUi的方式:
SystemChrome.setSystemUIOverlayStyle(DarkTheme.systemOverlay);
任何帮助将不胜感激。
编辑:这确实是一个不稳定的问题,而不是一个android问题:
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getWindow().setNavigationBarColor(Color.parseColor("#222222"));
}
}
即使在三星s10手机上,这个简单的android本机代码也可以完全满足我的需求。