我有许多具有注销按钮的类,因此我认为将注销方法移到每个单独的类之外并为其提供自己的类是有意义的,这样我就不必在多个类中修复它如果我对其进行更改,但是我面临一些与上下文相关的问题
该方法采用 Context 上下文,在这种情况下将是 homeActivity.this
第一个问题是
Util.HideKeyBoard(HomeActivity.this);
如果我把它改成
Util.HideKeyBoard(context);
它仍然是红色的,我不知道为什么,我该如何解决这个问题
下一个问题是开始新的 Activity 。
Intent intent = new Intent(context, SignupActivity.class);
startActivity(intent);
AnimatorClass.appearLeftAnimation(context);
finish();
StartActivity 是红色的,我不知道为什么,动画师类在上下文中也是红色的,完成也是红色的。
最佳答案
方法startActivity()
属于Context类,finish()
属于Activity类。
查看文档:
https://developer.android.com/reference/android/app/Activity.html#finish()
你可以这样解决这个问题:
public void yourExternalMethod(Activity activity) {
Intent intent = new Intent(activity, SignupActivity.class);
activity.startActivity(intent);
AnimatorClass.appearLeftAnimation(activity);
activity.finish();
}
关于java - 面向对象的android将方法从 Activity 中移动到具有上下文的新类中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37836723/