Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么我的应用程序在单击片段类中的项目时崩溃?_Java_Android_Android Fragments - Fatal编程技术网

Java 为什么我的应用程序在单击片段类中的项目时崩溃?

Java 为什么我的应用程序在单击片段类中的项目时崩溃?,java,android,android-fragments,Java,Android,Android Fragments,当我点击SettingsFragment中的某个项目时,我的应用程序崩溃。在这个片段类中,所有内容都正确显示,但只有我的parseUrl项可以工作。我点击任何其他项目,我的应用程序就关闭了。为什么会这样?下面是我的代码 public class SettingsFragment extends Fragment { MainActivity context; public SettingsFragment() { //public constructor } @NonNull @O

当我点击SettingsFragment中的某个项目时,我的应用程序崩溃。在这个片段类中,所有内容都正确显示,但只有我的parseUrl项可以工作。我点击任何其他项目,我的应用程序就关闭了。为什么会这样?下面是我的代码

public class SettingsFragment extends Fragment {
MainActivity context;


public SettingsFragment() {
    //public constructor
}

@NonNull
@Override
public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.navigation_drawer, container, false);


    FrameLayout instructions = view.findViewById(R.id.instructions);
    if (!getInstance().get("INSTRUCTIONS_ACTIVE", true)) {
        instructions.setVisibility(View.GONE);
    }
    instructions.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

            openInstructions();

        }
    });


    return view;

}

// Main functions
void openInstructions(){
    Intent transactions = new Intent(context, FragmentsActivity.class);
    transactions.putExtra("show","instructions");
    startActivity(transactions);
}


public void settingsMenu(String Type){

    switch (Type) {



        case "instructions":

            openInstructions();

            break;

}

上下文似乎为空

使用
getContext()
getActivity()
onCreateView
中初始化上下文上下文未初始化,一种方法是添加此方法:

   @Override
    public void onAttach(Context ctx) {
        super.onAttach(ctx);
        context = ctx;
    }

那么错误信息是什么?请包括logcat.java.lang.NullPointerException的整个堆栈跟踪:尝试在android.content.ComponentName.(ComponentName.java:130)的android.content.Intent.(Intent.java:6082)上的空对象引用上调用虚拟方法“java.lang.String android.content.Context.getPackageName()”在com.koupr.coinr.fragments.SettingsFragment.openTransactions(SettingsFragment.java:171)在com.koupr.coinr.fragments.SettingsFragment$5.onClick(SettingsFragment.java:92)你是对的,我检查了日志。我该怎么写呢?公共视图onCreateView(…{context=getContext();…}