标签: android-statusbar

透明动作栏和优步等状态栏

我已经对这个主题做了一些研究,但我找不到一些我的App/Activity的解决方案.

  1. 我试图获得一个透明的操作栏.

首先,我尝试更改AndroidManifest.xml中的主题:

价值观/ styles.xml:

<style name="AppTheme.ActionBar.Transparent" parent="AppTheme">
    <item name="android:windowContentOverlay">@null</item>
    <item name="windowActionBarOverlay">true</item>
    <item name="colorPrimary">@android:color/transparent</item>
Run Code Online (Sandbox Code Playgroud)

值-V21/styles.xml:

  <style name="AppTheme.ActionBar.Transparent" parent="AppTheme">
        <item name="colorPrimary">@android:color/transparent</item>
    </style>
Run Code Online (Sandbox Code Playgroud)

但那就是结果:

在此输入图像描述

所以我只得到一些浅灰色动作条,左/右侧有一些间隙.

其次,我尝试过使用fitsSystemWindow="true"android:background="@android:color/transparent"我的布局,但它也没有解决问题.

 <?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context="com.example.poweranimal.letsgo.Application.MainActivity">

    <android.support.design.widget.AppBarLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@android:color/transparent">

        <android.support.v7.widget.Toolbar
            android:id="@+id/toolbar"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"/>


    </android.support.design.widget.AppBarLayout>

    <include layout="@layout/content_main" />

    </android.support.design.widget.CoordinatorLayout>
Run Code Online (Sandbox Code Playgroud)

但我得到了与以前相同的输出:( 2.此外,我还尝试了获取透明状态栏:

getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
Run Code Online (Sandbox Code Playgroud)

<item name="android:statusBarColor">@android:color/transparent</item>
Run Code Online (Sandbox Code Playgroud)

但这也行不通(没有改变).

我真正想要的是这样的:

在此输入图像描述

如果有人为我提供可能的解决方案,那会很酷.

提前致谢.

java android android-actionbar android-toolbar android-statusbar

15
推荐指数
2
解决办法
6660
查看次数

反转状态栏的图标颜色

我已经搜索了很多关于这一点,但我发现的是如何更改状态栏颜色.我希望在白色背景上的状态栏中反转图标的颜色,就像Soundcloud在其移动应用程序中所做的那样:

在此输入图像描述

这该怎么做?

android android-statusbar

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

在软键盘出现时出现状态栏但在沉浸模式下软键盘消失时不会隐藏

最初我使用以下代码将我的Activity设置为沉浸模式:

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
    | View.SYSTEM_UI_FLAG_FULLSCREEN
    | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
Run Code Online (Sandbox Code Playgroud)

一切正常,直到用户点击EditText并出现软键盘.它会导致状态栏粘在顶部,即使在软键盘消失后也不会再次隐藏.奇怪的是,我只在LG /三星手机上遇到过这个问题,索尼手机对此没有任何问题.有人对此有任何想法吗?

android android-softkeyboard android-edittext android-statusbar android-immersive

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

如何在android中的状态栏上显示倒计时器,如时间显示?

我正在制作一个应用程序,允许用户选择日期和时间.达到日期和时间后,它将在屏幕上显示动画.在此之前,它只会在屏幕上显示倒计时时间(如xxx:xx:xx).我使用每秒都在变化的textview实现了这一点.如何在状态栏上显示此文本,如时间显示

我已经尝试过使用Notification构造函数,就像我在这里发现的一些帖子一样,但是它们已被删除,不再工作了.我尝试使用NotificationCompat.Builder,但它确实没有办法设置可以在状态栏上显示的文本.

任何人都知道任何有关它的工作解决方案,请给我一个答案.我只需要在图标的状态栏上显示一个文本

android android-layout android-notifications countdowntimer android-statusbar

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

如何在状态栏中创建没有图标的通知或只是隐藏它?

我想知道如何创建一个不在状态栏中显示图标的通知.

有一种方法可以隐藏它吗?

icons android android-notifications android-statusbar

12
推荐指数
2
解决办法
7422
查看次数

Google即时状态栏和导航栏上的渐变/阴影

我正在尝试将类似的状态栏和导航栏渐变设置为Google Now.

图像参考:矩形区域如下所示

在此输入图像描述

在Android Marshmallow上尝试以下选项后,

    <item name="android:windowTranslucentNavigation">true</item>
    <item name="android:windowTranslucentStatus">true</item>
Run Code Online (Sandbox Code Playgroud)

我得到以下行为

图片参考:

在此输入图像描述

谁能建议我如何在这两个上获得渐变?
那是一个渐变还是阴影?

android gradient android-statusbar android-6.0-marshmallow

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

如何隐藏状态栏?

如何隐藏特定活动的状态栏?

我发现了这个类似的问题,但没有一个答案对我有用.每次我尝试去参加活动时应用程序都崩溃了: 如何在Android中隐藏状态栏

谢谢.

android android-activity android-statusbar

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

如何在android系统状态栏中显示文本

我正在尝试为Android Nougat开发一个应用程序,我想在状态栏中显示一些从android服务例程生成的信息/文本.所以我的问题是,我不知道如何在状态栏中显示文本.

我添加了一个示例图像,以显示我的意思(红色圆圈).我知道这是可能的,因为我在Play商店的电池监视器应用程序中看到了它.

样品

我已经尝试过NotificationCombat.Builder,但我认为这不是正确的方法.也许是叠加层,但搜索后我找不到东西.

有人可以告诉我该怎么做或者给我一个提示吗?

编辑:这是我的NotificationCompat.Builder的测试代码

MainActivity.java

import android.app.Notification;
import android.app.NotificationManager;
import android.os.Bundle;
import android.support.v4.app.NotificationCompat;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;

public class MainActivity extends AppCompatActivity
{
    private final int NOTIFICATION_ID = 10;

    @Override
    protected void onCreate (Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this);
        mBuilder.setContentTitle("Value");
        mBuilder.setContentText("123");
        mBuilder.setSmallIcon(R.mipmap.ic_launcher);
        mBuilder.setOngoing(true);
        mBuilder.setAutoCancel(false);

        //Intent resultIntent = new Intent(this, MainActivity.class);
        //PendingIntent resultPendingIntent = PendingIntent.getActivity(this, 0, resultIntent, PendingIntent.FLAG_UPDATE_CURRENT);
        //mBuilder.setContentIntent(resultPendingIntent);

        Notification notification = mBuilder.build();
        notification.flags |= Notification.FLAG_NO_CLEAR | Notification.FLAG_ONGOING_EVENT;

        NotificationManager …
Run Code Online (Sandbox Code Playgroud)

notifications android overlay android-statusbar

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

状态栏在全屏对话框片段android中将其颜色更改为黑色

我正在使用对话框片段.问题是状态栏颜色变为黑色.如何将其改为其他颜色?内部碎片很奇怪,活动很好.它内部只有黑色的DialogFragment

        @Override
            public void onStart() {
                super.onStart();    //super.onStart() is where dialog.show() is actually called on the underlying dialog, so we have to do it after this point
                Dialog d = getDialog();
                if (d != null) {

                    int width = ViewGroup.LayoutParams.MATCH_PARENT;
                    int height = ViewGroup.LayoutParams.MATCH_PARENT;
                    d.getWindow().setLayout(width, height);
                    d.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

                }
            }
     @Override
        public Dialog onCreateDialog(Bundle savedInstanceState) {
            final Dialog dialog = new Dialog(getActivity(), R.style.full_screen_dialog);
            return dialog;

}
Run Code Online (Sandbox Code Playgroud)

android colors fragment android-dialogfragment android-statusbar

8
推荐指数
3
解决办法
9530
查看次数

以编程方式设置windowlightstatusbar属性

如您所知,我们可以windowLightStatusBar通过以下代码设置from xml.

<item name="android:windowLightStatusBar">true</item>
Run Code Online (Sandbox Code Playgroud)

我需要通过编程方式将此属性true更改为false或false更改为true.有没有办法实现它?

android android-statusbar

8
推荐指数
5
解决办法
7228
查看次数