2016-06-13 21 views
6

Ich habe durch folgenden einige Ratschläge einen Ladebildschirm (Splash) für meine Anwendung einrichten, die den „richtigen Weg“, erklärt, es zu tun:Steuerung Seitenverhältnis von Theme Hintergrund (Android)

styles.xml:

<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar"> 
    <item name="android:windowBackground">@drawable/splash_vector_drawable</item> 
</style> 

manifestieren:

<activity 
     android:name="com.tba.versionc.SplashActivity" 
     android:theme="@style/SplashTheme"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN"/> 

      <category android:name="android.intent.category.LAUNCHER"/> 
     </intent-filter> 
    </activity> 

java:

public class SplashActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     Intent intent = new Intent(this, MainActivity.class); 
     startActivity(intent); 
     finish(); 
    } 
} 

Als ich den Vektor für den Begrüßungsbildschirm entworfen habe, stelle ich das Seitenverhältnis auf mein Telefon (16: 9) ein, und es scheint gut zu funktionieren, aber ich bin besorgt darüber, was mit dem Seitenverhältnis passieren wird Geräte mit unterschiedlichen Bildschirmverhältnissen.

Um die Möglichkeit zu vermeiden, dass es "dehnen" auf die falsche Größe Bildschirm, würde ich bevorzugen, wenn es Mitte abgeschnitten wurde, aber da es kein ImageView oder sogar Teil einer Layoutdatei ist, ich nicht Irgendwie kennen Sie das Center-Crop-Attribut.

Jeder?

Antwort

1

Siehe this Leitfaden von Malcolm Hollingsworth.

Grundsätzlich müssen Sie Ihr Bild auf eine bestimmte Weise ändern, damit Android wissen kann, wie das Bild geändert werden soll, wenn das Seitenverhältnis nicht mit dem des Geräts übereinstimmt.

Eine weitere Ressource ist here

Ich hoffe, das hilft!

+0

Nun, das ist definitiv die beste/nächste Antwort. Ich bin nicht sicher, ob diese Methode in meinem speziellen Fall funktioniert, aber danke, es ist definitiv mehr Informationen in die richtige Richtung. –