Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Android

Tạo 2 Activity với màu Status Bar khác nhau trong Android

Mục tiêu

Thay đổi màu Status Bar (thanh trạng thái trên cùng) cho từng Activity khác nhau (yêu cầu API 21+ / Lollipop).

Các bước

Bước 1: Tạo project

Bước 2: Layout activity_main.xml (Activity 1)

<LinearLayout ... android:gravity="center" android:orientation="vertical">
    <Button android:id="@+id/click" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="click for second" />
</LinearLayout>

Bước 3: MainActivity.java - Set màu Status Bar vàng

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            getWindow().setStatusBarColor(Color.parseColor("#FFFF00")); // Vàng
        }
        setContentView(R.layout.activity_main);
        findViewById(R.id.click).setOnClickListener(v -> 
            startActivity(new Intent(this, Main2Activity.class)));
    }
}

Bước 4: Layout activity_main2.xml (Activity 2)

<android.support.constraint.ConstraintLayout ... />

Bước 5: Main2Activity.java - Set màu Status Bar đỏ

public class Main2Activity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            getWindow().setStatusBarColor(Color.parseColor("#B22222")); // Đỏ (Firebrick)
        }
        setContentView(R.layout.activity_main2);
    }
}

Bước 6: AndroidManifest.xml - Khai báo Activity 2

<manifest ... package="com.example.andy.myapplication">
    <application ...>
        <activity android:name=".MainActivity" android:screenOrientation="portrait">
            <intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter>
        </activity>
        <activity android:name=".Main2Activity" />
    </application>
</manifest>

Kết quả

Activity 1 - Status Bar vàng:

Tạo 2 Activity với màu Status Bar khác nhau trong Android

Activity 2 - Status Bar đỏ:

Tạo 2 Activity với màu Status Bar khác nhau trong Android