【Android】Activityが一瞬表示されちゃうやつ
以下のようなアプリを作っていてちょっとハマッたので忘備録
・NFCタグのタッチで起動するアプリ、タグに特定の文字列がなければアプリを起動したくない。
onCreate()でfinishすりゃ大丈夫だべーと思っていたけど、一瞬だけ表示されちゃうので困ってた。
んで、色々やってみた結果、下記方法で対応できた。
1. AndroidManifest.xmlのテーマを Theme.Translucent.NoTitleBar
2. onCreateでsetContentViewする前に起動すべきかを判定
3. 起動OKなら setContentViewの前に setThemeでテーマを設定
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) if(使えるタグか判定){ // 使えない場合は終了 finish() }else{ // テーマを本来のテーマに設定 setTheme(android.R.style.Theme_Light_NoTitleBar) setContentView(R.layout.activity_main) } }