有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java无法解析构造函数“意图”

package com.example.mukullashkari.onlinetestportal;
import 安卓.content.Intent;
import 安卓.support.design.widget.TabLayout;
import 安卓.support.v4.app.Fragment;
import 安卓.os.Bundle;
import 安卓.support.annotation.Nullable; 
import 安卓.view.LayoutInflater;
import 安卓.view.View;
import 安卓.view.ViewGroup;
import 安卓.widget.Button;

public class Tab1_fragment extends Fragment {

Button btnC;

public static Tab1_fragment newInstance(int sectionNumber) {
    Tab1_fragment fragment = new Tab1_fragment();
    return fragment;
}

public Tab1_fragment()
{

}
@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    btnC=(Button) btnC.findViewById(R.id.C_btn);
    btnC.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent myIntent=new Intent(Tab1_fragment.this,Cassessment.class);
            startActivity(myIntent);
        }
    }

    );
}


@Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) {


   return inflater.inflate(R.layout.tab1_fragment,container,false);
}

}

我已经创建了Casessment活动。但这个错误正在发生。表示无法解析构造函数。这段代码有什么问题,任何人都可以帮助

错误为::

无法解析构造函数的意图(com.example.mukullashkari.onlinetestportal.Tab1_fragment,java.lang.Class)'


共 (2) 个答案

  1. # 1 楼答案

    Intent构造函数希望您提供一个Context作为第一个参数,或者将其更改为类似getActivity()的内容,或者使用另一个上下文(片段不是有效的上下文,但活动是有效的)

  2. # 2 楼答案

    您将片段作为上下文传递,该上下文在片段使用中无效获取上下文使用getActivity(),如下代码所示

    btnC=(Button) btnC.findViewById(R.id.C_btn);
        btnC.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent myIntent=new Intent(getActivity(),Cassessment.class);
                startActivity(myIntent);
            }
        }
    

    或者试试这个

     Intent myIntent=new Intent(Tab1_fragment.this.getActivity(),Cassessment.class);
     startActivity(myIntent);