我在动态应用程序中使用片段,其中User.java文件包含值,而< code>TabbedActivity.java文件包含三个片段。我想将文本设置为< code > profile rgament . Java 中的< code>TextView。因此,我在< code > fragment _ profile . XML 中创建了一个< code>TextView,并使用以下代码从< code>TabbedActivity.java文件中引用了它
name = findViewById(R.id.name);
//getting the current user
User user = SharedPrefManager.getInstance(this).getUser();
//setting values to textviews
name.setText(user.getUsername());
它不显示任何编译错误,但打开TabbedActivity.java
后,应用程序在行停止NullPointerExceptionname.setText(user.getUsername ());
如何解决此问题?
这是< code > profile fragment . Java
文件的代码
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {
name = getActivity().findViewById(R.id.name);
//getting the current user
User user = SharedPrefManager.getInstance(getActivity()).getUser();
//setting values to textviews
name.setText(user.getUsername());
return inflater.inflate(R.layout.fragment_profile, container, false);
}
您需要在片段的java文件中执行此操作,而不是在活动的java文件。现在查找片段中的视图。替换此代码:
name = findViewById(R.id.name);
收件人:
name = getActivity().findViewById(R.id.name);
其余的代码可以按原样编写。
还要将这种类型的操作放在< code>onViewCreated方法中。将此代码放入< code>onCreateView可能会导致应用程序崩溃。
您的TextView
位于fragment_profile.xml
中,并且您试图在TabbedActivity.java
中找到TextView
,因此发生NullPointerException
把这段代码放在ProfileFrgament.java
用这个更改你的代码
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState)
{
final View rootView = inflater.inflate(R.layout.fragment_profile, container, false);
name = (TextView) rootView.findViewById(R.id.name);
User user = SharedPrefManager.getInstance(getActivity()).getUser();
name.setText(user.getUsername());
return rootView;
}
我找不到如何从< code>Activity更改fragment的< code>textview。我有4个文件: frag_class.xml有textView,我想更改MainActivity.java的文本。FragmentClass扩展了片段,此片段显示在MainActivity中,FragmentClass具有: 在MainActivity中,我尝试了这个: 但可悲的是,这段代码给了我Nu
我想为我的应用程序创建一个暗模式,我唯一的问题是我无法更改片段中的文本颜色,用户可以打开/关闭暗模式。这就是为什么我无法更改清单中的主题对此问题的任何解决方案? 这是为了检测是否打开了暗模式,背景颜色是否发生了变化,但我不知道如何改变片段中的文本颜色。 这是我的设置页面(片段),我想更改标题和摘要的颜色。
我需要将ViewPager放置在一个片段内部,但我有两个片段,片段1是我的菜单,片段2我想用作ViewPagerIndicator。 但一个碎片不能再有另一个碎片...我该怎么做呢?
我创建了一个几乎为空的UIViewController类,名为。在视图中,我设置标题并添加一个关闭按钮到导航我tem.leftBarButtonItem。 我的如下所示: 显示viewController时,其视图的背景为黑色。如何设置它的视图以用空视图填充屏幕——就像在故事板中设置UIViewController一样? 我已经尝试将以下内容添加到视图,但是视图仍然是黑色的:
问题内容: 确实需要一些建议,不知道这里出了什么问题。 上下文:2个片段,每个片段都有一个Textview,主要活动有2个按钮和一个edittext 目的:在主活动的edittext框中键入hello,然后单击片段1的按钮,textview将变为hello。 问题: 在edittext中输入hello并单击按钮1时,会遇到运行时错误。 Logcat: fragment_one.xml activi
首先,我仍然是Android开发的新手,我以前在这里问过类似的问题,如何让我的片段利用我的活动数据?以及如何将数据从活动发送到片段?(Android)但似乎大多数人都不太明白我的意思,所以让我来解释一下。假设我有一个文本视图: 和一个按钮: 在我的第一个片段layout.xml中,然后我想从我的主活动中调用它们,即以获取数据,即从天气API和。Android Studio不允许您这样使用它们,所以