- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
UPDATE: Finally find a little bit hacky solution. But it's not acceptable for me. All ideas can be useful.
我有一个闪屏 Activity ,但我没有使用 setContentView()。我使用 android:windowBackground
从 styles.xml 设置背景启动画面启动时,一个黑色矩形不知从哪里冒出来,位于屏幕的左下方。高度与 NavigationBar 的高度完全相同,从屏幕左侧开始到屏幕中心结束。
这个黑色矩形只出现在有导航栏的设备上。不是物理按钮。并且仅当尝试在 FullScreen Activity 中隐藏或显示导航栏时可见。
QUESTION: What can be the reason of this bug? How can I solve it?
您可以在下面看到整个事件。 (初始屏幕到登录屏幕的过渡)
这里是我的 splash Activity 样式:
<style name="SplashTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowBackground">@drawable/background_splash</item>
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
background_splash.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
//Tried different colored layer at bottom level but did not affect
<item>
<shape android:shape="rectangle">
<solid android:color="@color/grey_Dark"/>
</shape>
</item>
//Background image
<item
android:drawable="@drawable/bg"
android:gravity="center"/>
//9-patch Logo at the center
<item
android:drawable="@drawable/splash_logo"
android:gravity="center"/>
</layer-list>
Activity 启动
public class ActivitySplash extends BaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent intent = new Intent(ActivitySplash.this, ActivityLogin.class);
startActivity(intent);
finish();
}
}, 2000);
}
}
最佳答案
终于找到了一个有点老套的解决方案。但这对我来说是不能接受的。任何想法都可能有用。
首先,使用 Layout Inspector 得到这个结果:
在 DecorView 下,有一个不需要的奇怪的 View 是在启动 splash activity 后创建的。
它闪烁半秒后消失。
闪烁后,如果用户触发显示导航栏的屏幕,这个奇怪的 View 会再次出现(永久)。
添加后闪烁 View 消失
<item name="android:windowIsTranslucent">true</item>
我的 Activity 风格。
其他部分比较复杂。向 Activity 的 DecorView 添加了 OnHierarchyChangeListener。将我的 DecorView 转换到 FrameLayout 中,并覆盖 onChildViewAdded() 回调以在添加到 DecorView 后移除所有子项。
final FrameLayout myDecorView = (FrameLayout) decorView;
myDecorView.setOnHierarchyChangeListener(new ViewGroup.OnHierarchyChangeListener() {
@Override
public void onChildViewAdded(View parent, View child) {
myDecorView.removeView(child);
}
@Override
public void onChildViewRemoved(View parent, View child) {
}
});
关于android - 启动画面奇怪的黑色矩形在屏幕上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43636708/
我有一个表,用于测量数据集中两个不同值的分布百分比(我有一个计数,替换为 Percentage )。我只想在仪表板中发布 85% 的值。这样做的步骤是什么? .现在,如果我过滤掉 NO 值, YES
我想平均N通过Type对于 Inst 的值 我的数据设置为: Type, Inst, N A, A1, 4 A, A1, 13 A, A1, 13 A, A2, 4 A, A3, 5 B, B1, 4
当我使用 Node 的 http2 库(仅支持 HTTPS,不支持 HTTP)进行开发时,当我在 Chrome 中打开 localhost 时,我会看到一个警告屏幕: Your connection
我想创建一个具有响应式布局的导航栏菜单。当网站显示在显示器上时,我想播放导航栏。当网站在手机上显示时,我会显示最终显示导航栏的菜单图标。 我该怎么做? 最佳答案 试试这个,在移动设备上,导航栏不仅会显
我聘请了一名程序员为我创建一个 iPhone 应用程序。该应用程序的目的是拍照并将其上传到服务器。我们想制作一个特殊用途的屏幕,以便在上传照片之前查看照片。这个专门开发的屏幕将具有至关重要的缩放功能。
我在 Tableau 上有一个我无法解决的简单问题。 我想显示一个图表,显示随时间变化的度量。我想将用户通过参数选择的一个客户端与未选择的所有其他客户端进行比较。该图将显示具有 2 种不同颜色的两条线
我使用 Python 脚本从 3 个不同的 RDS 执行一系列复杂查询,然后将数据导出到一个 CSV 文件中。我现在正在尝试找到一种方法,每周将使用这些数据的仪表板自动发布到 Tableau 服务器中
我在工作中使用 tableau 来处理各种数据类型,包括敏感的个人数据,这些数据只能以聚合格式共享。我试图找到一种方法来保护私有(private)信息,方法是在单元格值小于 5 时隐藏它。这样,当用户
我最近开始在网站上嵌入 Tableau 可视化效果,并遇到了在浏览器中直接使用 Control + P 打印它们的问题。大多数完全扭曲,如果有的话。我做了一些挖掘,发现这是一个已知问题: http:/
例如,此 URL 包含十几个项目:https://tableautest.domain.uk/t/CustomerSharing/view/projects 在每个项目中都有几个工作簿。每个工作簿中都
我正在研究如何使用 Tableau 连接到 Cloudera Hadoop。我提供服务器和端口详细信息并使用“Impala”进行连接。我能够成功连接,选择默认模式并选择所需的表。 在此之后,当我将维度
我正在尝试将 Tableau 工作表嵌入到我的 ReactJS 应用程序中。我有一个包含报告名称列表的菜单(在 react 中),当单击菜单项时,它会更新包含报告名称的状态。我决定使用 tableau
我有以下问题!我有一个这样的表: Data Source 我想创建一个可以获取 apl_id 的字段(我想这是一个字段),有一些我想要的 service_offered。 上表中的示例。如果我想要只有
我有一个航类延误数据电子表格,我正在处理一个显示每个机场总延误时间的工作表。我想过滤维度“机场”,即根据每个机场的起飞次数创建机场类别,“小型”、“中型”和“大型”,这是通过计算维度“航类号”计算得出
我想创建一个带有过滤器的表格,用于选择和比较事物: 假设我有一个变量 Var,包含值 A、B、C、D、E。我想要一个过滤器,以便用户可以选择 A B C D 之一,同时 E 始终被选中。这样选中的E和
我是一名优秀的程序员,十分优秀!