2016-06-13 17 views
3

Wie Hintergrund für alle Aktivitäten in der adnroid-Anwendung festlegen und das Seitenverhältnis beibehalten?Wie Hintergrund für alle Aktivitäten festlegen?

Ich benutze android:windowBackground in der Art, aber ich weiß nicht, wie man Seitenverhältnis für mein Hintergrundbild behält.

Gibt es nur eine Möglichkeit, ImageView mit Hintergrund für alle Aktivitäten manuell hinzuzufügen?

+3

Machen Sie Ihre eigene BaseActivity-Klasse, haben alle anderen Activity-Klassen davon ausgehen? –

+0

Es klingt wie eine gute Idee. Und wie kann ich dafür Hintergrund setzen? –

+0

So etwas sehe ich jedoch nicht als ideale Lösung, um zusätzliche Inhalte darauf zu zeichnen. http://stackoverflow.com/questions/16135984/full-screen-background-image-in-a-activity –

Antwort

1

Sie könnten Ihre eigene Basis Aktivität als abstrakte Klasse definieren und jede andere Aktivität in der Anwendung von derjenigen erweitern machen:

abstract class BaseActivity extends Activity { 
    @Override 
    public void onCreate(Bundle icicle) { 
     super.onCreate(icicle); 
     // this is a generic way of getting your root view element 
     View rootView = (View) findViewById(android.R.id.content); 
     rootView.setBackgroundDrawable(getResources().getDrawable(R.drawable.your_image));   
    } 
} 

Dann sollten Sie das in Ihrer gewünschten Aktivität erweitern:

public class YourActivity extends BaseActivity 
0

könnten Sie in der Lage sein, den Hintergrund zu setzen in den styles.xml

<style name="AppTheme.FullBackground" parent="AppTheme"> 
    <item name="android:background">#757575</item> 
</style> 

(Wo AppTheme könnte ein Thema, das Sie bereits definiert sein, und ich nur eine graue Farbe gibt, aber es kann ein ziehbar sein)

Dann zu Ihrem hinzufügen Manifest

<activity 
    android:name=".FooActivity" 
    android:theme="@style/AppTheme.FullBackground"> 
</activity> 

Da Sie Aktivitäten hinzufügen Zum Manifest ist dies eine gute Möglichkeit zu überprüfen, ob alle Aktivitäten den Hintergrund haben. Sie könnten natürlich immer noch die BaseActivity erweitern und nur die BaseActivity Klasse die Theme-Einstellung beibehalten.

+0

Nun, ich habe ** ** ** ** bereits ** verwenden, um Hintergrundbild, aber es ist streethced und hässlich –

+0

Ihre Frage hat windowBackground, nicht Hintergrund, aber ich sehe, was Sie sagen, und ich fand diesen Beitrag http://stackoverflow.com/questions/5902230/how-to-implement-an-androidbackground-that-doesnt -strecken –

Verwandte Themen