Android:如何从首选屏幕更改主视图背景

Android:如何从首选屏幕更改主视图背景,android,background,sharedpreferences,preferenceactivity,Android,Background,Sharedpreferences,Preferenceactivity,我有一个preferenceScreen,可以选择更改主布局的背景。我试图创建另一个活动来完成这项工作,但根本不起作用。 目前,我只能使用按钮从主视图进行更改。 当我在setOnPreferenceClickListener中尝试此操作时: View view=(View) findViewByid(R.id.main_layout); view.setBackgroundDrawable(draw); 我得到了这个错误: java.lang.RuntimeException: Failure

我有一个preferenceScreen,可以选择更改主布局的背景。我试图创建另一个活动来完成这项工作,但根本不起作用。 目前,我只能使用按钮从主视图进行更改。 当我在setOnPreferenceClickListener中尝试此操作时:

View view=(View) findViewByid(R.id.main_layout);
view.setBackgroundDrawable(draw);
我得到了这个错误:

java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=-1, data=Intent { dat=content://media/external/images/media/1 }} to activity {com.helloworld/com.helloworld.Preferences}: java.lang.NullPointerException

如何从首选项屏幕更改背景以及如何保存它?

我搜索了更多内容,现在正在使用意图。但仍然没有运气。我搜索了一些,现在我正在使用意图。但还是没有运气。