我一直在开发一个显示文章的应用程序,并在工具栏上显示文章的标题,如果我通过调用主要活动文章片段中的方法来设置文章文本和工具栏文本在片段的onResume
方法中,它可以正常工作,但是一旦我在片段中调用特定方法后尝试这样做,它就不起作用给我java.lang.NullPointerException: Attempt to invoke virtual method 'android.view.View android.view.View.findViewById(int)' on a null object reference
我尝试更改所有内容并使refreshDisplay
方法在不同时间被调用并重命名和更改并完全删除newClassArticle
中的方法输入,无论如何 - 无论我是否只使用静态字符串,无论我是否甚至不更改字符串 - 在片段上调用newClassArticle
后,它将不再执行refreshDisplay
内的操作并将产生上述错误。
这是主要活动中的newArticle
方法:
public void newArticle() {
frag_article newArticle = new frag_article();
newArticle.setArguments(getIntent().getExtras());
FragmentManager fragManager = getFragmentManager();
FragmentTransaction transaction = fragManager.beginTransaction();
transaction.replace(R.id.activeFrag, newArticle);
transaction.commit();
newArticle.newArticleClass(articles.get(0));
}
这是主要活动中的setActionBarTitle
方法:
public void setActionBarTitle(String title) {
getSupportActionBar().setTitle(title);
}
这是片段中的newClassArticle
方法:
public void newClassArticle(class_article newArticleClass){
articleTitle = newArticleClass.title;
articleBody = newArticleClass.body;
refreshDisplay();
}
这是片段中的refreshDisplay
方法:
public void refreshDisplay(){
activity.setActionBarTitle(articleTitle);
txtBody.setText(articleBody);
}
欢迎任何关于这个令人愤怒的问题的帮助