2016-12-15 5 views
0

Мой фоновое изображение является PNG 375 × 667
Обратите внимание, что я НЕ с использованием setContentView() в моей деятельности onCreate()
Я просто используя в теме
Использование нормальный режим работы, пользователь увидит пустой темный экран в течение 2-3 секунд, прежде чем они смогут увидеть изображение экрана Splash в первый раз, когда они запустили приложение ==>не что я хочу
Мне нужно изображение экрана Splash, чтобы показать немедленно, когда пользователь открывает приложение
Некоторые люди сделать экран выплеска прозрачным, что означает, что пользователь будет видеть ничего не происходит в течение 2-3 секунд в первый раз ==>неприемлем для меняOutOfMemoryError - слой-список изображений фона

Manifest.xml

<activity 
      android:name=".views.activities.SplashActivity" 
      android:configChanges="orientation|keyboardHidden|screenSize" 
      android:launchMode="singleInstance" 
      android:screenOrientation="portrait" 
      android:theme="@style/SplashTheme" 
      android:windowSoftInputMode="stateAlwaysHidden|adjustResize"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN"/> 

       <category android:name="android.intent.category.LAUNCHER"/> 
      </intent-filter> 
     </activity> 

styles.xml

<style name="SplashTheme" parent="Theme.AppCompat.Light.NoActionBar"> 
     <item name="android:windowNoTitle">true</item> 
     <item name="android:windowActionBar">false</item> 
     <item name="android:windowFullscreen">true</item> 
     <item name="android:windowContentOverlay">@null</item> 
     <item name="android:windowIsTranslucent">false</item> 
     <item name="android:background">@drawable/bg_splash</item> 
    </style> 

bg_splash.xml

<item 
    android:drawable="@android:color/black"/> 

<item 
    android:drawable="@drawable/splash_full_tiny" 
    android:gravity="center"> 
</item> 

Это происходит только несколько устройств:

  • Vodafone Смарт ультра 6
  • A1601 (Oppo)
  • SM-A800I (Samsung)
+0

Я думаю, что вы вызываете задержку в 3 секунды, можете ли вы проверить свой Java-код? – kgsharathkumar

+0

Возможно, попробуйте и посмотреть, поможет ли это. – rookiedev

ответ

0

попробуйте добавить этот андроид: largeHeap = "true"

<application 
     android:allowBackup="true" 
     android:icon="@drawable/icon" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" 
     android:largeHeap="true" 
     ></application> 
+0

это уже есть @LOW – ericn

-1

Для этого вы должны использовать разные изображения для разных устройств или любого небольшого изображения.

+0

Пожалуйста, внимательно прочитайте мой вопрос, чтобы понять, почему я пошел на ваш подход – ericn

0

Попробуйте применить стиль SplashTheme в теге приложения или вы можете добавить фон в appTheme так же, как splashtheme. Это быстро покажет ваше изображение всплеска. Удостоверьтесь, что после выполнения проверьте все действия. потому что он будет использоваться в качестве фона в вашем приложении. Во всех действиях, которые имеют прозрачный фон, он будет показывать это как backgroud. Надеюсь, это может вам помочь.