Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.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
Android 我想调用getView覆盖方法中的mainActivity…..它显示致命异常..如何解决它_Android_Nullpointerexception - Fatal编程技术网

Android 我想调用getView覆盖方法中的mainActivity…..它显示致命异常..如何解决它

Android 我想调用getView覆盖方法中的mainActivity…..它显示致命异常..如何解决它,android,nullpointerexception,Android,Nullpointerexception,mainActivity.java public class MainActivity extends AppCompatActivity { ListView listView; ListViewAdaptor adapter; TextView txtname1,txtrank1; RelativeLayout relativeLayout; Context context; ArrayList<String> name;

mainActivity.java

public class MainActivity extends AppCompatActivity {

    ListView listView;
    ListViewAdaptor adapter;
    TextView txtname1,txtrank1;
    RelativeLayout relativeLayout;
    Context context;
    ArrayList<String> name;
    ArrayList<Integer> rank;
    int highestRank = 39;

    public MainActivity() {
    }
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        listView = findViewById(R.id.listview);
        relativeLayout = (RelativeLayout) findViewById(R.id.rlFloter);
        txtname1 =  findViewById(R.id.txtName);
        txtrank1 =  findViewById(R.id.txtRank);

        name = new ArrayList<>();
        rank = new ArrayList<>();
        for(int i=1 ; i<40 ; i++){
            name.add("Winit Employer"+i);
            rank.add(i); }
        txtname1.setText("Winit Employer39");
        txtrank1.setText("39");
        adapter = new ListViewAdaptor(this,name,rank);
        listView.setAdapter(adapter);
    }

    public void visible() {
        txtname1.setVisibility(View.VISIBLE);
        txtrank1.setVisibility(View.VISIBLE);
    }

    public void gone() {
        txtname1.setVisibility(View.GONE);
        txtrank1.setVisibility(View.GONE);
    }

    public void toast() {
        Toast.makeText(context,"Toast",Toast.LENGTH_LONG).show();
   }
/////////////
public类MainActivity扩展了AppCompatActivity{
列表视图列表视图;
ListViewAdapter适配器;
TextView txtname1,txtrank1;
相对的相对的;
语境;
ArrayList名称;
ArrayList秩;
int-highestRank=39;
公共活动(){
}
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView=findViewById(R.id.listView);
relativeLayout=(relativeLayout)findViewById(R.id.rlFloter);
txtname1=findviewbyd(R.id.txtName);
txtrank1=findViewById(R.id.txtRank);
name=新的ArrayList();
秩=新的ArrayList();

for(int i=1;i变量
上下文
未初始化

删除变量并在activity toast方法中使用
this

     Toast.makeText(this,"Toast",Toast.LENGTH_LONG).show();

变量
上下文
未初始化

删除变量并在activity toast方法中使用
this

     Toast.makeText(this,"Toast",Toast.LENGTH_LONG).show();

有两种解决方案,一种是@SamuelRobert建议的,另一种是add

context = MainActivity.this 

在MainActivity的onCreate方法中。

有两种解决方案,一种是@SamuelRobert建议的,另一种是add

context = MainActivity.this 

在MainActivity的onCreate方法中。

上下文变量是冗余的。因为
这个
更好地传达了活动中的上下文。而且代码更少!这总是好的上下文变量是冗余的。因为
这个
更好地传达了活动中的上下文。代码更少!这总是好的