2013-08-01 63 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