finish()完成活动,但仍然在后台

时间:2017-09-16 14:16:37

标签: android activity-finish

我有一个关于android studio中活动的finish()方法的问题:

我有这个简单的代码:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish();
            }
        });
    }
}

在我的activity_main中,我只需一个按钮。当我点击按钮时,活动结束,然后我回到设备的主屏幕......但是,当我点击设备的菜单按钮(显示所有应用程序在后台运行)时,我仍然看到我的活动......我不想要那个。我该如何解决?

2 个答案:

答案 0 :(得分:8)

尝试使用

android:excludeFromRecents="true" Activity

AndroidManifest.xml

<activity
            ...
             android:excludeFromRecents="true">
</activity>

答案 1 :(得分:0)

如果活动的后台运行线程以从网络下载数据,则可以在onCreate()中创建该线程,然后在onDestroy()中在此处停止该线程 如果您没有新线程,可以在finish();之后写return;