


Die ultimative Lösung für das Problem eines kurzen schwarzen oder weißen Bildschirms beim Aufrufen der Startseite
irontec hat ein Open-Source-Projekt PHP für Android (PFA) gestartet, um PHP auf die Android-Plattform zu bringen. Jetzt stellen wir es vor.
Problembeschreibung
Bei der Android-Projektentwicklung erscheint der Bildschirm beim Starten der App eine Zeit lang weiß Oder der Bildschirm wird schwarz und die Dauer variiert je nach Gerät. Es wirkt sich stark auf die Benutzererfahrung aus, daher ist es für uns notwendig, es zu optimieren.
Der Grund für das Schwarz-Weiß-Bildschirmproblem
Wenn wir eine APP starten und die Anwendung, zu der die App gehört, nicht im Hintergrund läuft, wird das System erstellt zunächst einen neuen Prozess zum Ausführen der APP, die Erstellung und Initialisierung des Prozesses dauert jedoch einige Zeit. Wenn die Initialisierungszeit zu lang ist, erfolgt möglicherweise keine Bewegung auf dem Bildschirm, und der Benutzer wird nachdenken Stellen Sie fest, dass die App nicht angeklickt wurde, und klicken Sie erneut auf das Anwendungssymbol, was die Benutzererfahrung erheblich beeinträchtigt. Daher muss Android rechtzeitig auf den Klick des Benutzers reagieren, um die Aktion zu starten Vorschaufenster), das aussieht, als ob die App gestartet wurde, der Dateninhalt jedoch noch nicht initialisiert wurde.
StartingWindow wird im Allgemeinen angezeigt, bevor der Anwendungsprozess erfolgreich erstellt und initialisiert wurde. Der Zweck besteht darin, dem Benutzer mitzuteilen, dass das System den Vorgang akzeptiert hat und reagiert. Nachdem die Programminitialisierung abgeschlossen ist, wird die Benutzeroberfläche der Startseite angezeigt und das Fenster wird gleichzeitig entfernt, es handelt sich also nur um ein temporäres Fenster.
Im Allgemeinen legen wir das Thema für Anwendung und Aktivität fest und das System initialisiert das Startfenster entsprechend dem festgelegten Thema. Die oberste Ebene des Fensterlayouts ist DecorView. StartingWindow zeigt eine leere DecorView an, aber die in der Aktivität festgelegte Hintergrundfarbe wird auf die DecorView angewendet. Wenn die Aktivität kein Design angibt, wird das Design der Anwendung verwendet (Das Anwendungssystem erfordert, dass das Design festgelegt wird.) Unsere Einstellungen im Stil bestimmen wie folgt, ob ein weißer oder ein schwarzer Bildschirm angezeigt wird:
<application // .... android:theme="@style/AppTheme">
Wenn unser AppTheme das Light-Design wie unten definiert verwendet, wird das Die Anzeige wird ein weißer Bildschirm sein, andernfalls ist die Anzeige ein schwarzer Bildschirm:
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
Lösung
Erstellen Sie zunächst eine neue Ebene -list unter res/drawable, mit einem zufälligen Namen, wie zum Beispiel „splash.xml“:
Referenz zum Schreiben der Ebenenliste: https://www.jb51.net/article/130850.htm
<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <!-- 背景颜色 --> <item android:drawable="@color/white" /> <item> <!-- 图片 --> <bitmap android:gravity="center" android:src="@drawable/wel_page" /> </item></layer-list>
Jeder kann eine Ebenenliste schreiben. Oben ist die Hintergrundfarbe und unten ist ein Bild. Dieses Bild kann ein Vollbild oder ein kleines Bild sein. Wenn es sich um ein Vollbildbild handelt, muss die obige Farbe nicht festgelegt werden. Wenn es sich um ein kleines Bild handelt, müssen Sie die Farbe und die Position des Bildes angeben.
2. Legen Sie den Fensterhintergrund für das Thema fest: Sie können unsere Ebenenliste oben als Hintergrund verwenden und natürlich auch ein Vollbildbild festlegen.
<style name="SplashTheme" parent="AppBaseTheme"> <!-- 欢迎页背景引用刚才写好的 --> <item name="android:windowBackground">@drawable/splash</item> <item name="android:windowFullscreen">true</item> <!-- <item name="android:windowIsTranslucent">true</item> --> <!-- 透明背景不要了 --></style>
3. Definieren Sie das Thema von SplashActivity als SplashTheme in AndroidManifest.xml: Beachten Sie hier, dass das von der Anwendung verwendete Thema AppTheme und das von SplashActivity verwendete Thema SplashTheme ist. Dies hat zur Folge, dass andere Aktivitäten das AppTheme-Design verwenden, solange SplashActivity das StartAppTheme-Design verwendet.
<activity android:name=".SplashActivity" android:theme="@style/SplashTheme"> <intent-filter> <action android:name="android.intent.action.MAIN"/> <category android:name="android.intent.category.LAUNCHER"/> </intent-filter></activity>
4. Um SplashActivity zu implementieren, starten Sie einfach Ihre MainActivity direkt in onCreate(), ohne setContentView():
public class SplashActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // setContentView(R.layout.activity_load_sir); new Handler().postDelayed(new Runnable() { @Override public void run() { Intent intent = new Intent(SplashActivity.this,MainActivity.class); startActivity(intent); finish(); } }, 3000); } }
Extension
im zweiten Schritt oben Im Artikel heißt es, dass Sie den Hintergrund direkt auf ein Bild festlegen können, ohne die Ebenenliste zu verwenden. Es wird jedoch nicht empfohlen, ein PNG-Bild direkt als Hintergrund zu verwenden, da die Bildschirmgröße zu groß ist und die Bildanzeige verformt wird Möglich ist, dass wir auch ein 9. PNG-Hintergrundbild verwenden können, aber es gibt einen Fehler bei der Verwendung von Bildern, da das Splash-Bild in das Thema geschrieben wird und der Speicher des Bildes nicht freigegeben werden kann -list spart Speicher.
Verwandte Empfehlungen:
Android Animation_html/css_WEB-ITnose
Das obige ist der detaillierte Inhalt vonDie ultimative Lösung für das Problem eines kurzen schwarzen oder weißen Bildschirms beim Aufrufen der Startseite. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen





PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
