因此,我正在與Java Studio在Android工作室,我想從一個不同的類開始一個新班級(我在ListenerServiceFromWear
,並希望開始MainActivity
)並且一旦Mainactivity
啓動,我想在Mainactivity
中啓動一個方法(startEmergencyMode();
)。如何開始一個新的活動,並開始在該活動中的一個方法
我該如何從ListenerServiceFromWear
做到這一點?
因此,我正在與Java Studio在Android工作室,我想從一個不同的類開始一個新班級(我在ListenerServiceFromWear
,並希望開始MainActivity
)並且一旦Mainactivity
啓動,我想在Mainactivity
中啓動一個方法(startEmergencyMode();
)。如何開始一個新的活動,並開始在該活動中的一個方法
我該如何從ListenerServiceFromWear
做到這一點?
我不太明白你的意思是「開始」
在java中,您:
static
字段或方法public
字段和方法。如果你想只是一個MainActivity
「實例」,使用一個靜態方法:
public static void startEmergencyMode() {
// Code here
}
,你可以隨時隨地打電話使用MainActivity.startEmergencyMode()
。 請記住,這個靜態方法只能訪問靜態字段和其他靜態方法。
如果你想創建的MainActivity
一個實例,只需創建一個與調用方法:
public void startEmergencyMode() {
// Code here
}
// Somewhere else
MainActivity activity = new MainActivity();
activity.startEmergencyMode();
如果你不明白一個靜態和非靜態方法或字段之間的差異,請參考答案在此線程:What does 'public static void' mean in Java?
開始MainActivity
,意圖和目的的額外放一些標誌會告訴MainActivity
調用startMergencyMode()
Intent intent = new Intent(this, Mainactivity.class);
intent.putExtra("isEmergency", true);
startActivity(intent);
然後在Mainactivity
實際調用startEmergencyMode()
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// ...
Intent intent = getIntent();
boolean isEmergency = intent.getBooleanExtra("isEmergency", false);
if(isEmergency){
startEmergencyMode();
}
}
''MainActivity毫安=新MainActivity(); ma.startEmergencyMode();''? – f1sh
我嘗試過,但它給view.findById()一個錯誤,因爲它正在尋找在MainActivity中的時候正在尋找listener.java文件。這就是爲什麼我認爲我可能調用另一個java文件的方法,而不是實際啓動mainactivity文件,然後調用方法 – hxwtch