我已经搜索了这个,但无法找到答案,因为我不知道我做错了哪一方.每当我对这个方法进行分类时,我都会从我调用的地方得到错误.
我在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)
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)
| 归档时间: |
|
| 查看次数: |
876 次 |
| 最近记录: |