如何从另一个类调用一个类的方法 - android

Ars*_*wan -3 java android

我已经搜索了这个,但无法找到答案,因为我不知道我做错了哪一方.每当我对这个方法进行分类时,我都会从我调用的地方得到错误.

我在checkpass.java类中调用此方法

 private void checking() {
    okbtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {


            TestClass testClass = new TestClass();
            testClass.testing();

        }
    });
}
Run Code Online (Sandbox Code Playgroud)

我正在调用这个位于另一个类中的方法

public void testing(){
    Toast.makeText(TestClass.this, "Testing class", Toast.LENGTH_SHORT).show();
}
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

at android.widget.Toast.makeText(Toast.java:287)
at com.futureappspk.WeTextFree.TestClass.testing(TestClass.java:18)
at com.futureappspk.WeTextFree.CheckPass$1.onClick(CheckPass.java:43)
at android.view.View.performClick(View.java:4746)
Run Code Online (Sandbox Code Playgroud)

M D*_*M D 6

testClass不是Activity你在这里失败了TestClass.this.

最好将上下文传递给testing(Context mContext){它并使用它

public void testing(Context mContext){
Toast.makeText(mContext, "Testing class", Toast.LENGTH_SHORT).show();
}
Run Code Online (Sandbox Code Playgroud)

并从任何地方打电话

testClass.testing(yourActivity.this);
Run Code Online (Sandbox Code Playgroud)