μ΄νμ ν€λ©΄ μ μμ¬ λ‘κ³ κ° μ κΉ λνλ¬λ€κ° μ¬λΌμ§ ν λ©μΈ νλ©΄μ΄ λ³΄μΈλ€.
μ΄ νλ©΄μ μ€νλμ νλ©΄μ΄λΌκ³ νλ€.
μ€νλμ νλ©΄μ λ¨μν 보μ¬μ£ΌκΈ° μ©λλ‘ λ£λ κ²½μ°λ μμ§λ§, μ£Όλ‘ μ±μμ νμν 리μμ€λ€μ λ€μ΄λ°μ λ λκΈ° νλ©΄ μ©λλ‘ μ¬μ©νλ€.
λ§λλ λ°©λ²μ κ°λ¨νλ€. μ€νλμ μ‘ν°λΉν° νλ©΄μ λ°λ‘ λ§λ€κ³ , λ©μΈ μ‘ν°λΉν°λ‘ λμ΄κ°λ©΄ λλ€.
1. μ€νλμ μ‘ν°λΉν° μμ±
첫 νλ©΄μΌλ‘ μ¬μ©λλ―λ‘ λ³΄ν΅μ μ μΌ μ²μ λ§λ€μ΄μ§λ MainActivity λ₯Ό νμ©νλ€.
λ§μ½ λ³λμ μ€νλμ μ‘ν°λΉν°λ₯Ό μμ±νλ€λ©΄, 첫 νλ©΄μ λμ°κΈ° μν΄ AndroidManifest.xml μ λ€μκ³Ό κ°μ΄ μ λ ₯νμ.
...
<activity android:name=".TitleActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
...
intent-filter λΆλΆμ΄ λ°λ‘ ν΄λΉ μ‘ν°λΉν°λ₯Ό 첫 νλ©΄μΌλ‘ μ°κ² λ€λ μλ―Έλ€.
2. νμ΄νκ³Ό μ‘μ λ° μμ κΈ°
μμ±ν μ‘ν°λΉν°μ νμ΄νκ³Ό μ‘μ λ°λ₯Ό μμ 보μ.
λ¨Όμ res > values > themes > themes.xml μ λ€μμ μΆκ°νλ€.
...
<style name="SplashTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
</style>
...
κ·Έλ¦¬κ³ λ€μ AndroidManifest.xml λ‘ λμμμ μλμ²λΌ μμ νλ€.
...
<activity android:name=".TitleActivity" android:theme="@style/SplashTheme">
...
3. νλ©΄ μμ±
μ΄μ μ€νλμλ‘ λ³΄μ¬μ€ νλ©΄μ λ§λ€μ΄λ³΄μ.
첫λ²μ§Έ λ°©λ²μ Theme λ₯Ό νμ©νμ¬ background λ‘ λ‘κ³ λ₯Ό 보μ¬μ£Όλ λ°©μμ΄λ€.
res > mipmap μ μ¬μ©ν μ΄λ―Έμ§λ₯Ό μΆκ°νλ€. (drawble μ μ΄μ©ν΄λ λλ€).
κ·Έ λ€μ res > values > themes > themes.xml μμ μκΉ μΆκ°νλ κ²μ μλμ²λΌ μμ νλ€. λ΄κ° μΆκ°ν μ΄λ―Έμ§λ title.png μ΄λ€.
...
<style name="SplashTheme" parent="Theme.AppCompat.Light.DarkActionBar">
...
<item name="android:windowBackground">@mipmap/title</item>
...
μ΄λ¬λ©΄ title.png κ° νλ©΄ κ½ μ°¨κ² λνλλ€.
λλ²μ§Έ λ°©λ²μ layout xml νμΌμ λμ°λ κ²μ΄λ€. μμ μ΄ μνλ Layout xml νμΌμ μ°λ©΄ λλ€.
4. μλ° μ½λ
3μ΄λμ νλ©΄μ 보μ¬μ£Όκ³ λ©μΈνλ©΄μΌλ‘ λμ΄κ°λ μλ° μ½λλ₯Ό μ§λ³΄μ.
package //μμ μ ν¨ν€μ§
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
public class TitleActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_title); //themeλ‘ μ§μ νλ€λ©΄ μμ νλ€.
moveMain(1); //1μ΄ ν main activity λ‘ λμ΄κ°
}
private void moveMain(int sec) {
new Handler().postDelayed(new Runnable()
{
@Override
public void run()
{
//new Intent(νμ¬ context, μ΄λν activity)
Intent intent = new Intent(getApplicationContext(), MainActivity.class);
startActivity(intent); //intent μ λͺ
μλ μ‘ν°λΉν°λ‘ μ΄λ
finish(); //νμ¬ μ‘ν°λΉν° μ’
λ£
}
}, 1000 * sec); // secμ΄ μ λ λλ μ΄λ₯Ό μ€ ν μμ
}
}
μ°Έκ³ λ‘ thread.sleep μΌλ‘ delay λ₯Ό μ£Όλ©΄ layout λ‘λ©λ κ°μ΄ λ©μΆλ―λ‘ nμ΄ ν μ€νλλ postDelayed λ₯Ό μ΄μ©νμλ€.
μμ±λ νλ©΄~