[英]Can't call MainActivity methods from its class
我到處找,找不到我的代碼有什么問題,我只是想從它自己的類中調用 MainActivity 方法:
主活動.java:
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
TestiClass testi = new TestiClass(this,this);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void testi_method(){
}
}
TestiClass.java:
import android.app.Activity;
import android.content.Context;
public class TestiClass {
private Activity mActivity;
private Context mContext;
TestiClass(Activity activity ,Context context){
this.mActivity = activity;
this.mContext = context;
}
void test(){
mActivity.testi_method(); //????
}
}
mActivity.testi_method()
說 - 無法解析方法......有什么想法嗎?
如果這必須是您的實現,那么它很容易解決:
private final MainActivity mainActivity;
private final Context context;
TestiClass(MainActivity mainActivity, Context context){
this.mainActivity = mainActivity;
this.context = context;
}
不要使用活動,使用您要調用方法的類。 這是修復:
import android.app.Activity;
import android.content.Context;
public class TestiClass {
private MainActivity mActivity;
private Context mContext;
TestiClass(MainActivity activity ,Context context){
this.mActivity = activity;
this.mContext = context;
}
void test(){
mActivity.testi_method();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.