Wie entfernen Sie die transiente Anzeige oben in der Statusleiste in Android?Java

Java-Forum
Anonymous
 Wie entfernen Sie die transiente Anzeige oben in der Statusleiste in Android?

Post by Anonymous »

Im Auto befindet sich ein Overlay, das über die Statusleiste für Anwendungen im Vollbildmodus angezeigt wird, wenn Sie über die Statusleiste nach unten wischen. Wenn Sie erneut nach unten streichen, wird das Benachrichtigungsfeld angezeigt. Ich kann jedoch nicht identifizieren, wie das Overlay auf der Statusleiste entfernen kann. Als ich analysiert habe, fand ich, dass die folgende Methode während des ersten Swips der Statusleiste aufgerufen wird. < /P>
public class CarSystemBar extends SystemUI implements CommandQueue.Callbacks{
......
@Override
public void showTransient(int displayId, int[] types) {

Log.i(TAG, "showTransient: ");
if (displayId != mDisplayId) {
return;
}
try{

if (containsType(types, ITYPE_STATUS_BAR)) {
if (!mStatusBarTransientShown) {
mStatusBarTransientShown = true;
handleTransientChanged();
}
}
if (containsType(types, ITYPE_NAVIGATION_BAR)) {
if (!mNavBarTransientShown) {
mNavBarTransientShown = true;
handleTransientChanged();
}
}
}catch (Exception e) {
Log.e(TAG, "Exception"+e);
}
}

@Override
public void abortTransient(int displayId, int[] types) {
Log.i(TAG, "abortTransient: ");
if (displayId != mDisplayId) {
return;
}
if (!containsType(types, ITYPE_STATUS_BAR) && !containsType(types, ITYPE_NAVIGATION_BAR)) {
return;
}
clearTransient();
}

private void clearTransient() {
Log.i(TAG,"clearTransient");
if (mStatusBarTransientShown) {
mStatusBarTransientShown = false;
handleTransientChanged();
}
if (mNavBarTransientShown) {
mNavBarTransientShown = false;
handleTransientChanged();
}
}
< /code>
Szenario:
Wenn ich nach unten streichel Ich finde, warum Showtransient () ruft. So springen Sie zum direkten Aufruf von NotificationPanel?>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post