小编Haw*_*ike的帖子

Android:如何在新的 SplashScreen API 中将可绘制对象设置为 windowSplashScreenBackground 参数?

我想使用Splash Screen API制作带有渐变背景和徽标的启动屏幕

像这样:

在此输入图像描述

我对值是纯色的字段进行了样式设置windowSplashScreenBackground,效果很好:

<style name="Theme.MyApp.SplashScreen" parent="Theme.SplashScreen">
    <item name="windowSplashScreenBackground">@color/blue</item>
    <item name="windowSplashScreenAnimatedIcon">@mipmap/ic_launcher</item>
    <item name="postSplashScreenTheme">@style/Theme.MyApp</item>
</style>
Run Code Online (Sandbox Code Playgroud)

该属性windowSplashScreenBackground只能采用颜色。

有什么想法如何创建渐变背景吗?可能是这样的:

 <style name="Theme.MyApp.SplashScreen" parent="Theme.SplashScreen">
    ... 
    <item name="windowSplashScreenBackground">@drawable/gradient_splash_screen_background</item>
    ...
</style>
Run Code Online (Sandbox Code Playgroud)

更新

我还尝试在字段中声明背景android:windowBackground而不是windowSplashScreenBackground

<style name="Theme.MyApp.SplashScreen" parent="Theme.SplashScreen">
    <item name="android:windowBackground">@drawable/gradient_splash_screen_background</item>
<!--        <item name="windowSplashScreenBackground">@color/purple</item>-->
<!--        <item name="windowSplashScreenBackground">@drawable/splash_screen_layers</item>-->
    <item name="windowSplashScreenAnimatedIcon">@mipmap/ic_launcher</item>
    <item name="postSplashScreenTheme">@style/Theme.MyApp</item>
</style>
Run Code Online (Sandbox Code Playgroud)

但它解决了一个问题并消耗了另一个问题。屏幕背景接受渐变但徽标变得不可见

android splash-screen android-theme

30
推荐指数
2
解决办法
2万
查看次数

为什么定义此代码实现的输出?

考虑以下两个函数重载:

int foo(int a)
{
  return 20;
}

const char foo(double b)
{
  return -3;
}

int x = foo(6.0);
cout << x;
Run Code Online (Sandbox Code Playgroud)

为什么这个例子的结果取决于具体的编译器或平台?

编译按ISO/IEC 14882:1998进行.

c++ overloading

4
推荐指数
1
解决办法
132
查看次数

Android:设置默认选择芯片

有没有办法将选择芯片设置为默认选项?此外,如果只选择了一个芯片,就不能取消选中任何芯片吗?

xml android material-design android-chips material-components-android

3
推荐指数
1
解决办法
3260
查看次数

为什么 Lisp 中 1000 阶乘的计算速度如此之快(并显示正确的结果)?

我试图在 Lisp 中实现阶乘的朴素计算。

(defun factorial (n)
  (if (equal n 1)
    1
    (* n (factorial (- n 1)))))
Run Code Online (Sandbox Code Playgroud)

正如人们所期望的那样,该代码适用于小数(< 10)。然而,我很惊讶它也适用于更高的数字(例如 1000)并且结果几乎立即计算出来。

另一方面,在 C++ 中,以下代码为 检索 0 factorial(1000)

long long unsigned factorial(int n)
{
    if(n == 1) return 1;
    return n * factorial(n-1);
}
Run Code Online (Sandbox Code Playgroud)

为什么 Lisp 中的计算如此之快,数字是如何存储在内存中的?

c++ lisp performance common-lisp factorial

3
推荐指数
1
解决办法
206
查看次数

如何使 Kotlin 泛型方法静态化?

我知道可以用 Java 编写静态泛型方法。

我试图在 Kotlin 中实现我自己的解决方案,但我失败了。

class Wrapper<T>
{
    companion object <T> // error: Type parameters are not allowed for objects.
    {
        private var value: T? = null

        // implement some methods
    }
}
Run Code Online (Sandbox Code Playgroud)

有什么方法可以在 Kotlin 中实现静态泛型方法吗?

generics static kotlin

1
推荐指数
1
解决办法
1612
查看次数