N S*_*rma 7 android android-activity
我将活动主题设置为Theme.NoDisplay但是当它打开但按下后按钮活动没有关闭/销毁.它应该在背压下关闭/销毁.
伙计们帮助我为什么会这样,以及解决这个问题的任何解决办法.
public class MainActivity extends Activity {
// Tag of the Activity
private static String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
DatabaseManager.init(this);
NFCIItem mNFCItem = new NFCIItem();
mNFCItem.setSerialNumber(1);
DatabaseManager.getInstance().addWishList(mNFCItem);
final List<NFCIItem> wishLists = DatabaseManager.getInstance().getAllNFCSerialNumber();
Log.v(TAG, wishLists.toString());
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
Run Code Online (Sandbox Code Playgroud)
AndroidManifest.xml中
<activity
android:name="com.example.appdemo.MainActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoDisplay" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Run Code Online (Sandbox Code Playgroud)
我想它正在关闭,但你看不到任何证据,因为它是“NoDisplay”。使用此主题的 Activity 没有可见的 UI(因此此类 Activity 处理 UI 事件是不合逻辑的),并且不应保持活动状态。例如看这个问题:
如果您确实希望此活动的布局可见并处理事件,则应使用不同的主题。另一方面,如果这是一个不可见的 Activity,仅执行一些后台处理,请在 onCreate 中调用 finish() 以在处理完成后将其关闭。