我为我的应用程序创建了一个活动和一个视图。在视图内部,我有一个充当服务器的线程。
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new MainView(this));
}
}
public class ServerView extends View {
public ServerView(Context context) {
super(context);
server.startServer();
}
}
当我按下 backButton 时,我的应用程序没有被破坏。我手动破坏了它,但我的线程仍在后台运行。我需要捕捉 backButton 事件,所以我使用了这个
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_BACK)) {
server.shutDown();
}
return super.onKeyDown(keyCode, event);
}
这个函数不能停止我的线程。我不知道如何从视图中销毁我的 mainActivity?有什么建议吗?