无法解析构造函数' Intent'

时间:2017-09-05 06:05:33

标签: java android android-intent

package com.example.mukullashkari.onlinetestportal;
import android.content.Intent;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.os.Bundle;
import android.support.annotation.Nullable; 
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.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);
}

}

我已经创建了Cassessment活动。但错误来自Intent Constructor。说构造函数无法解析。这段代码有什么问题可以帮到任何人!!

ERROR IS ::

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

2 个答案:

答案 0 :(得分:0)

您正在传递片段作为无效的上下文在片段使用中获取上下文使用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);

答案 1 :(得分:0)

Intent构造函数期望您提供Context作为第一个参数,或者将其更改为getActivity()或使用另一个Context,(片段不是有效的Context,而是一个Activity)是)。