我有一個類來啓動一個新的活動,並且我有一個創建一個intent的函數。我需要將MainActivity.class變量傳遞給該函數。 通常我會這樣做。Android將變量傳遞給intent
Intent intent = new Intent(context, MainActivity.class);
我wan't有這樣的事情:
Intent intent = new Intent(context, variable);
所以我wan't改變活動基本上開始。這可能嗎?
我有一個類來啓動一個新的活動,並且我有一個創建一個intent的函數。我需要將MainActivity.class變量傳遞給該函數。 通常我會這樣做。Android將變量傳遞給intent
Intent intent = new Intent(context, MainActivity.class);
我wan't有這樣的事情:
Intent intent = new Intent(context, variable);
所以我wan't改變活動基本上開始。這可能嗎?
如果我理解正確的,你想要什麼使用反射來獲取類名。
Class someActivity = Class.forName(getPackageName() + "MainActivity");
Intent intent = new Intent(context, someActivity);
startActivity(intent);
。如果我這樣編輯這段代碼,我可以得到我想要的。 – Opsoftware
嘗試類someActivity = Class.forName(getPackageName()+「.MainActivity」); Intent intent = new Intent(getApplicationContext(),someActivity); startActivity(intent); (例外e){ e.printStackTrace(); } – Opsoftware
在發佈之前搜索您的問題,很多人都有與您相同的問題。
我想這就是你要找的
How to pass integer from one activity to another?
現在不是INT使用字符串,我猜這就是你要找的
您正在尋找這個。
private void callActivity(Activity activity,Class<?> className)
{
Intent intent = new Intent(activity, className);
startActivity(intent);
}
只需從您調用其他活動的位置傳遞活動以及您需要調用的className即可。
private void callActivity(Context context,Class<?> className)
{
Intent intent = new Intent(context, className);
startActivity(intent);
}
你的意思是你想要傳遞一個類變量到意圖? –
你是否想將變量從一個活動傳遞給另一個? –
根據你什麼是一個變量?確切地說,是 – Adonis