短篇小说:
我有一个布局“layout.xml”,在成功的网络请求后被另一个布局“success.xml”替换。两种布局都有一个为布局ImageView
提供背景的。这两个背景都需要相同,并且都取决于用户偏好。
更长的故事:这一切都发生在web 请求之后Fragmnet
用AsyncTask
“success.xml”替换 contentView 。onPostExecute
这发生如下:
View view = getView();
view = null;
view = View.inflate(context, R.layout.success, null);
我试图做的是给两个ImageView
s 以下android:id="@+id/background_image"
然后打电话
ImageView background = (ImageView)view.findViewById(R.id.background_image);
background.setImageResource(R.drawable.bg1);
此背景设置适用于初始视图(layout.xml),但在尝试更改为“success.xml”时,我得到一个 NullPointException,因为background
它是 null。
我已经检查过,视图的 id 设置为 -1,而原始视图的background_image
id 设置为合理且有效的值。
我也试过像这样设置第二个视图的背景ID:,android:id="@id/background_image"
即没有'+',但仍然没有运气。
增加的复杂性是它不仅仅是2个布局,而是大约5个我需要这样做,所以回收视图ID真的很方便。
任何帮助将不胜感激。