2016-08-19 4 views
0

Ich bin neu in der Entwicklung von Android-Apps, ich versuche, den Hintergrund direkt aus Ressourcen und ich halte diese Exception.

MainActivity.java

package imed.aouidene.com.wallpaper; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.WindowManager; 
import android.widget.Button; 

public class MainActivity extends AppCompatActivity { 
    Button next; 
    int count; 
    int tab[] = new int[3]; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    getSupportActionBar().hide(); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    setContentView(R.layout.activity_main); 

    count = 0 ; 
    String s = "" ; 

    for(int i=0;i<3;i++){ 
     s="drawable/image"+(i+1)+".jpg"; 
     tab[i]=getResources().getIdentifier(s,"drawable",getPackageName()); 

    } 

    getWindow().setBackgroundDrawableResource(tab[count]); 


    next = (Button) findViewById(R.id.nextbutton); 
    next.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
      if (count < 2) { 
       count++; 
      } else { 
       count = 0; 
      } 
      getWindow().setBackgroundDrawableResource(tab[count]); 


     } 
    }); 


} 
} 

das Problem ist unter:. getWindow() setBackgroundDrawableResource (tab [count]);

+0

Ich habe noch nie 'getWindow(). SetBackgroundDrawableResource' verwendet, normalerweise verwende ich es auf' PopupDialog's 'Window' .. Aber ich empfehle Ihnen, Bezug auf das Hauptlayout Ihres Layouts oder irgendetwas zu bekommen wirklich, was du als Hintergrund benutzen kannst und 'setBackground' dort tust. Und welche Ausnahme bekommst du? Ich antworte blind hier lol –

Antwort

0

Sie sollten s wie folgt ändern:

s = "image"+(i+1); 

nur den Namen der Ressource bekommen!

+0

es funktionierte, thnx. –

Verwandte Themen