2013-03-10 147 views
0

我只是做了一点点代码,使我的背景更改为可绘制的,如果我的首选项中的复选框被选中,并且当它不是时候变白。该代码在我的MainActivity中工作正常,但它在另一个Activity(LinksActivity)中提供了NullPointerException。任何人都可以纠正我呢?背景更改使部队关闭

package nl.plplpl.ccs; 

import android.annotation.SuppressLint; 
import android.app.Activity; 
import android.content.SharedPreferences; 
import android.os.Build; 
import android.os.Bundle; 
import android.preference.PreferenceManager; 
import android.widget.LinearLayout; 


public class LinksActivity extends Activity { 

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

@SuppressLint("NewApi") 
@SuppressWarnings("deprecation") 
@Override 
protected void onResume() { 
    LinearLayout linkslayout = (LinearLayout) findViewById(R.id.linkslayout); 
    SharedPreferences prefs = PreferenceManager 
      .getDefaultSharedPreferences(this); 
    Boolean bg = prefs.getBoolean("background", false); 
    if (bg){ 

     if (Build.VERSION.SDK_INT >= 16) 
      linkslayout.setBackground(getResources().getDrawable(R.drawable.background)); 
     else 
      linkslayout.setBackgroundDrawable(getResources().getDrawable(R.drawable.background)); 
    } else { 
     linkslayout.setBackgroundResource(R.color.white); 
    } 
    super.onResume(); 
    } 
} 

回答

4

您忘记了设置活动内容。

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.layout_main); 
} 
+0

呃,这有点尴尬。非常感谢! – TimeWasterNL 2013-03-10 10:02:07