我是Android的新手,并且通过以下方式学习如何在Android中创建片段 例如:Fragment Navigation Drawer
在菜单项之间导航和添加导航标题之间的代码包含方法var newEditedRole = GetRoleVm(editedRole.RoleId);
。
由于作者没有提到粘贴此代码的位置,我粘贴在getActivity()
文件中
我是否在在菜单项之间导航和添加导航标题之间的代码粘贴在正确的位置?
在方法MainActivity.java
中有评论selectDrawerItem(MenuItem menuItem)
作者是否希望我在这里添加一些内容。
答案 0 :(得分:61)
您可以使用:
this Or `MainActivity.this`
而不是:
getActivity()
答案 1 :(得分:24)
活动没有getActivity()
方法
片段有。
因为getActivity()
说:“返回包含我的活动”。
虽然Framents包含在活动中,但活动本身却不包含。
答案 2 :(得分:1)
已经明确指出不能在活动中使用 getActivity() 方法。好吧,除了 this
关键字之外的其他选择可能是;
textView.getContext();
这将提供视图当前所在的 Activity 的上下文。即类似于 View.getContext();
答案 3 :(得分:0)
在Fragment中,最好使用onAttach()方法来获取附加到它的Activity的实例。
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
}