我正在开发一个Android项目,但是我在fragmentpageradapter中使用了片段的问题,它是视图寻呼机的适配器
我有以下代码,我试图在每个页面上显示Writer信息(作家是一个arraylist的成员)
它在普通屏幕上工作正常,但当手机模式改变为横向时,由#"空指针异常引起的程序崩溃"因为编写器更改为NULL(为什么?)
private Writer writer;
public WriterForm()
{
}
public void setWriter(Writer writer)
{
this.writer = writer;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View rootView = inflater.inflate(R.layout.writer_list_methods, container, false);
// Name
TextView wName = (TextView) rootView.findViewById(R.id.writer_list_methods_writer_name);
wName.setTypeface(DefaultActivity.font, Typeface.BOLD);
wName.setText(" " + writer.getName());
}
那我怎么能解决这个问题?
提前感谢:))
答案 0 :(得分:1)
问题在于,每次按chnage方向时,都会重新创建片段,即空指针的来源。
溶液:
你可以阻止它横向添加到你的活动清单android:screenOrientation =" portrait"
或
如果你希望像活动的生命周期一样生活片段,你需要添加setRetainInstance(true)