我有一个Android应用程序,主要活动上有一个片段。问题是,我无法从片段中调用TextView
个对象。
当前代码是
public class MainFragment extends Fragment {
private View view;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_main, container, false);
this.view = view;
//populateListView();
//registerClickCallback();
TextView text = (TextView) view.findViewById(R.id.main_txt_name);
if(view == null){System.out.println("view is null");} //view is not null
if(text == null){System.out.println("text is null");} //text is null!
text.setText("text changed"); //nullpointer exception
return view;
}
视图对象不为空,但view.findViewById(R.id.main_txt_name);
返回null
。错误消息是
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference
在行
"text.setText("text changed"); //nullpointer exception"
如果我将视图更改为getActivity()
,那就是同样的问题。
任何人都知道如何获取layout
元素?
答案 0 :(得分:0)
查看R.id.main_txt_name
xml中的R.layout.fragment_main
。可能是你的id不是布局xml。