Android 设置活动启动/启动时的片段ui
我有一个活动使用“fragment”标记在布局xml中嵌入框架。 Fragment类有一个简单的方法按需设置其TextView,如下所示:Android 设置活动启动/启动时的片段ui,android,android-fragments,Android,Android Fragments,我有一个活动使用“fragment”标记在布局xml中嵌入框架。 Fragment类有一个简单的方法按需设置其TextView,如下所示: MyFragment{ void setNameText(String user){ mNameText.setText(user); } } 我在activity oncreate中获得片段引用,如下所示: MyActvity::onCreate(){ myFrag = (MyFrag)getSupportFragmentMan
MyFragment{
void setNameText(String user){
mNameText.setText(user);
}
}
我在activity oncreate中获得片段引用,如下所示:
MyActvity::onCreate(){
myFrag = (MyFrag)getSupportFragmentManager().findFragmentById(R.id.myfrag_id);
}
现在我需要在活动启动时设置myFrag的名称。我尝试从Activity::onCreate和Activity::onResume调用“myFrag.setNameText(x)”。在“mNameText”对象上的“setNameText()”方法中,两次都会获取空指针异常
启动活动时,访问子片段的ui对象的正确位置是什么?当活动调用onCreate时,片段未附加到活动,您必须在fragment的onCreateView方法中调用findViewById来绑定您的TextView,然后您可以设置Text
Error:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.xxxxxxActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.TextView.setText(java.lang.CharSequence)' on a null object reference