2013-09-30 5 views
1

Я пытался получить небольшое изображение, которое будет отображаться до начала моей основной деятельности. Это мое текущее кодирование в манифесте андроидаДеятельность B начинается до начала действия A

Что бы вы ни делали, мой заставка не запускается. Они начинают по отдельности, но не вместе, (я до сих пор не поставил таймер на мой всплеск изображения, как я хочу, чтобы проверить, работает ли он или нет, и он не работает)

+0

может быть ваш экран-заставка запускается, а затем сразу переходит к MainActivity, так что вы не видите изменения. положите задержку, а затем попробуйте – Raghunandan

+0

Что такое код в активности Splash? – nhgrif

+0

'package com.example.test; import android.app.Activity; import android.os.Bundle; общественного класса Всплеск расширяет активность { \t @Override \t защищен недействительным OnCreate (Bundle savedInstanceState) \t { \t \t // TODO Auto-генерироваться метод заглушки \t \t super.onCreate (savedInstanceState); \t \t setContentView (R.layout.splash); \t \t \t} \t } ' Это текущий код всплеск, сделать вам требуется код XML, а ?. Я проверил учебник, который показывает то же самое, но в его случае приложение останавливается на заставке! – user2831076

ответ

1

Удалить

<intent-filter> 
    <action android:name="com.example.test.MAINACTIVITY" /> 
    <category android:name="android.intent.category.DEFAULT" /> 
</intent-filter> 

Используйте ниже код в заставке после требуемого времени

Intent intent=new Intent(this,MAINACTIVITY.class); 
startActivity(intent); 
finish(); //To close splashscreen when MAINACTIVITY loads 

Приведенный выше код начинается с заставки и через некоторое время начать основную деятельность

+0

первый блок должен удалить из файла манифеста, который вы указали в своем сообщении, второй блок должен добавить в файл java, определяющий вашу активность Splash, вы должны добавить его в onCreate, после ожидания окончания таймера. – Turkish

+0

. код (Intent part) в активности всплеска – Piyush

+0

это тоже не получилось! Я не уверен, что делать сейчас! Я пробовал точно то, что показал учебник, и все же мое не работает! – user2831076

1

Вы должны удалить <intent-filter> из вашего объявления MainActivity,
и запустите MainActivity из splashActivity, используя простой призыв и startActivity.

+0

Не могли бы вы рассказать о коде? Я - не против программирования Android. – user2831076

+0

Посмотрите на ответ Пиюша Гупты, это то, что я говорю – Turkish

1

Попробуйте это.

 <activity 
      android:name=".Splash" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name=".MainActivity" > 
     </activity> 
    </application> 

Код для выплеска class-

package com.example.test; 
import android.app.Activity; 
import android.os.Bundle; 
public class Splash extends Activity 
{ 
@Override 
protected void onCreate(Bundle savedInstanceState) 
{ // TODO Auto-generated method stub 
super.onCreate(savedInstanceState); 
setContentView(R.layout.splash); 

final Handler handle = new Handler(); 
Runnable delay = new Runnable() { 
public void run() { 
startActivity(new Intent(Splash.this, MainActivity.class)); 
       finish(); 
      } 
     }; 
     handle.postDelayed(delay,5000); 
} 
} 

его задержки следующего умысел 5 вторых. вы можете установить время в соответствии с вами.

+0

Прошу прощения, это не работает! – user2831076

+0

@ user2831076 ok какая ошибка сейчас? –

+0

То же самое, он просто не показывает заставку и напрямую переходит в MainActivity – user2831076

0

Использование Это:

<activity 
     android:name=".Splash" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name=".MainActivity" > 
    </activity> 
</application> 

и Это:

public class Splash extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.splash); 

    final Handler handler = new Handler(); 
    handler.postDelayed(new Runnable() { 
     public void run() { 
      Intent mInHome = new Intent(Splash.this, MainActivity.class); 
      Splash.this.startActivity(mInHome); 
      Splash.this.finish(); 
     } 
    }, 3000); 
} 
} 
Смежные вопросы