片段返回null

时间:2015-03-19 14:42:25

标签: android android-fragments android-studio oncreate

我知道这个问题已被提出并多次解决,但我看到的解决方案都没有帮助我,所以又来了:

public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState){
        View rootView = inflater.inflate(R.layout.fragment_home_screen, container, false);
        try {
             userInfo = (TextView) rootView.findViewById(R.id.showData);
            user myUser = new user();
                userInfo.setText(myUser.getUserInfo());
        }
        catch(Exception e){
          System.out.println("ERROR: "+e.getMessage());
        }
            return rootView;
    }

这是我的片段(默认由Android Studio创建并进行了少量编辑)。相应的XML布局是这样的:

android:paddingBottom="@dimen/activity_vertical_margin"
tools:context=".HomeScreen$PlaceholderFragment">

<TextView android:id="@+id/showData" 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" />

我得到的错误:

03-19 08:23:09.119  29125-29125/com.app.myAPP I/System.out﹕ ERROR: null
03-19 08:23:12.296  29125-29125/com.app.myAPP I/System.out﹕ ERROR: null

TextView是在OnCreateView()而不是onCreate()中创建的,这似乎在大多数时候都会导致返回null。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

检查R.id.showData内是否R.layout.fragment_home_screen。 另外,改变这个:

userInfo.setText(myUser.getUserInfo());

userInfo.setText("hello");

验证myUser是否已正确初始化。