Saya telah mengembangkan aplikasi demo sederhana dengan layar splash, peta dan beberapa layar biasa.
Saya memiliki bilah tindakan di bagian atas yang berisi logo. Semuanya terlihat baik-baik saja di ponsel saya (Galaxy s1 I9000 V2.3) tetapi ketika saya mengujinya di Galaxy s2 v4, bilah tindakan juga muncul di layar splash dan di layar peta.
Aktivitas spalsh dan peta bahkan tidak mewarisi dari ActionBarActivity jadi bagaimana mungkin dan bagaimana cara menghilangkannya?
Nyata:
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:theme="@style/Theme.AppCompat.Light" >
<activity
android:name=".HomeActivity"
android:icon="@drawable/android_logo"
android:label=""
android:logo="@drawable/android_logo" >
<!--
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
-->
</activity>
<activity
android:name=".MapActivity"
android:label="" >
</activity>
<activity
android:name=".PackageActivity"
android:icon="@drawable/android_logo"
android:label=""
android:logo="@drawable/android_logo" >
</activity>
<activity
android:name=".SplashActivity"
android:label="" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
Definisi MapActivity (ini panjang jadi saya hanya menyertakan definisinya):
public class MapActivity extends FragmentActivity implements LocationListener
Aktivitas Percikan:
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.support.v7.app.ActionBar;
import android.support.v7.app.ActionBarActivity;
public class SplashActivity extends Activity{
private static final long SPLASH_DISPLAY_LENGTH = 2000;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
Intent mainIntent = new Intent(SplashActivity.this,HomeActivity.class);
SplashActivity.this.startActivity(mainIntent);
SplashActivity.this.finish();
}
}, SPLASH_DISPLAY_LENGTH);
}
}
getActionBar
karena aktivitas tidak diwarisi dariActionBarActivity