2013-08-01 92 views
1

我有一個Android應用程序,只是簡單地切換設置中的值。點擊此應用程序時,我不想顯示佈局,只是一個吐司,然後kill itself。我有這個已經:android java不顯示任何佈局

public class Test extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    ... 

    Toast.makeText(this, "MESSAGE", Toast.LENGTH_LONG).show(); 

    android.os.Process.killProcess(android.os.Process.myPid()); 

} 
} 

有沒有在所有禁用佈局的可能性?

+2

[啓動android應用程序沒有主要活動並啓動服務啓動應用程序]的可能重複(http://stackoverflow.com/questions/10909683/launch-android-application-without-main-activity-and-start-service -on-啓動)。既然你的工作很簡單,你可能不需要有/開始一項服務。無形的活動可能就足夠了。 – kabuko

回答

2

聽起來像Service將在這種情況下更合適。

服務在後臺運行,但仍可以執行一些有限的UI任務,如顯示Toasts。

活動並非設計爲在沒有UI的情況下使用。

+0

也許,但它是一個切換,所以需要有一種方法來啓動用戶啓動「服務」的意圖。這可能意味着要麼是一個'活動',以便有一個啓動器圖標,或者我想一個小部件。一個看不見的'活動'可能是最簡單的選擇。 – kabuko

+0

是的,我仍然需要通過活動啓動服務... @ kabuko如何設置隱形活動? – wasp256

0

操作簡單,只需註釋掉一行是這樣的:

//setContentView(R.layout.activity_main);

哦,爲了自殺,你可以直接在onCreate結束時調用finish。

+0

我從來沒有添加這個方法調用,你可以在我的(確定很短的)代碼示例中看到 – wasp256

+0

那麼,什麼是...? – pinxue