OW Debug - Notice
Message: Trying to access array offset on value of type null
File: /home/romarekl/public_html/sosyallift.com/ow_plugins/forum/controllers/topic.php
Line: 136
Android'de Açılış Ekranı yapma - Splash Screen Forum | Sosyallift©
Loading...
 
tr
BTK
BTK Ekim 22 '20

Android'de Açılış Ekranı uygulamanın doğru yolu

Android'deki heyecan verici özelliklerden biri olan Splash Screen , bir karşılama ekranı veya kullanıcının bir uygulama ile ilgili ilk deneyimiyle ilgilidir. Profesyonelce tasarlanmış Açılış Ekranı, Uygulamanızı daha profesyonel gösterme olasılığına sahiptir.



Ne yazık ki Android'de, iOS ile karşılaştırıldığında Splash Screen gösterecek herhangi bir dahili mekanizmamız yok. Ancak bir Android Uygulaması için Açılış Ekranını uygulamanın birçok yolu vardır. Bu makalede, açılış ekranlarını uygulamanın 2 yaygın yöntemini inceleyeceğiz ve doğru yolu bulacağız:



* Zamanlayıcıları Kullanma (kötü)

* Başlatıcı Temasını Kullanma (Doğru Yol)





Yöntem 1: Zamanlayıcı kullanma

Bu ea olduğunu lar bir sıçrama etkinlik oluşturmak ve bir iş parçacığı oluşturmak iest yöntem onCreate()2/3 saniye gösteriler için yukarı, sonra bizim istenen aktiviteye gidin. İşte bu kolay yöntemin uygulanmasına bakın:


private static int SPLASH_TIME_OUT = 3000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash_screen);

new Handler().postDelayed(new Runnable() {
@Override
public void run() {

// This method will be executed once the timer is over
// Start your app main activity

Intent i = new Intent(SplashScreenActivity.this, MainActivity.class);

startActivity(i);
// close this activity
finish();
}
}, SPLASH_TIME_OUT);
}
}



Yöntem 2: Başlatıcı Teması Kullanma

Açılış Ekranı Teması: Bir etkinliğin Android işletim sistemi olarak adlandırıldığını biliyor musunuz, ilk önce bildirimde bu etkinlik için herhangi bir tema olup olmadığını ve temayı bildirimden yükleyin. ??? Bu yüzden, açılış etkinliğimiz için Manifest'te özel bir tema belirleyeceğiz. Açılış ekranı temasını oluşturmak için aşağıdaki işlemi izleyin.




* Ekranı için arka plan oluşturunsplash_screen_background.xml içinde res/drawable dizininde.

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"
android:opacity="opaque">
<item android : rawable="@android:color/holo_purple"/>
<item>
<bitmap
android:gravity="center"
android : src="@drawable/app_logo"/>
</item>
</layer-list>




Res/values​​/style.xml'de Açılış Ekranı içinStil oluşturun .

<style name="SplashScreenTheme", parent = "Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/launcher_screen_with_logo
</style>



Stili , AndroidManifest.xml'de SplashScreenActivity için tema olarak ayarlayın

<activity android:name=".SplashScreenActivity"
android:theme="@style/SplashScreenTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity >.Time for Splash Screen: 




Açılış Ekranının zamanı:

Zaten açılış ekranı olarak gösterilecek bir temamız var. Şimdi göstermek için zamana ihtiyacım var. Tamam Yöntem 1'de, dikkatlice fark ederseniz, açılış ekranınızı açmadan önce beyaz bir boş ekran bulacaksınız. Bunun neden olduğunu biliyor musun? Bu, 'Soğuk Başlatma' nedeniyle olur . 'Soğuk Başlatma', kodun başlatıldığı andan kullanıcı arayüzünün kullanıcıya yanıt vermesine kadar geçen süredir. Cihazın başlatılmasından bu yana uygulamanızın ilk kez başlatılması gibi durumlarda veya sistem uygulamayı kapattıktan sonra gerçekleşir.



Dolayısıyla, bu yöntemde açılış ekranımızı göstermek için bu soğuk başlatma zamanını kullanacağız. Burada açılış ekranı için kesin bir zamanımız yok, bunun yerine soğuk başlatma zamanını alacak. Ve onCreate () çağrıldığında, MainActivity () 'ye yeniden yönlendireceğiz ve SplashSreenActivity'yi bitireceğiz.




* Açılış ekranını manifest'ten yüklerken. Bu nedenle, herhangi bir xml setContentView() ayarlamanıza gerek yoktur.


public class SplashScreenActivity extends AppCompatActivity {

/>re">

@Override

/>re">

protected void onCreate(Bundle savedInstanceState) {

/>re">

super.onCreate(savedInstanceState);

/>re">

startActivity(new Intent(SplashScreenActivity.this, MainActivity.class));

/>re">

finish();

/>re">

}

}

<layer-list xmlns :android="http://schemas.android.com/apk/res/android" android:opacity="opaque"> </layer-list >

Düzenlendi... Serkan BEKİROĞULLARI (Ekim 23 '20)
Paylaş: