ฉันได้พัฒนาแอปพลิเคชั่นสาธิตง่ายๆด้วยหน้าจอเริ่มต้นแผนที่และหน้าจอปกติบางส่วน
ฉันมีแถบการทำงานที่ด้านบนซึ่งมีโลโก้ ทุกอย่างดูดีบนโทรศัพท์ของฉัน (Galaxy s1 I9000 V2.3) แต่เมื่อฉันทดสอบบน Galaxy s2 v4 แถบการกระทำจะปรากฏในหน้าจอเริ่มต้นและในหน้าจอแผนที่ด้วย
กิจกรรม spalsh และแผนที่ไม่ได้สืบทอดมาจาก ActionBarActivity ด้วยซ้ำดังนั้นจะเป็นไปได้อย่างไรและฉันจะทำให้มันหายไปได้อย่างไร
ประจักษ์:
<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>
นิยาม MapActivity (มันยาวมากดังนั้นฉันจึงรวมแค่คำจำกัดความ):
public class MapActivity extends FragmentActivity implements LocationListener
กิจกรรม Splash:
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
เนื่องจากกิจกรรมไม่ได้รับช่วงต่อจากActionBarActivity