테스트 환경

 

Android Studio version : 4.2.1

compileSdkVersion 30

defaultConfig {
   
applicationId
"copycoding.tistory.statusbar2"
   
minSdkVersion 16
   
targetSdkVersion 30
   
versionCode 1
   
versionName "1.0"

 

 

간단한 테스트용으로 앱을 만드는게 아니라면 title bar는 화면의 상당히 많은 부분을 차지하게 되어 화면 구성을 방해하게 됩니다.

Title bar를 숨기는 방법은 xmljava에서 간단하게 처리가 가능 합니다.

화면을 하나 생성을 하고 textview를 하나 추가해 줍니다.

 

<TextView
   
android:id="@+id/button"
   
android:layout_width="match_parent"
   
android:layout_height="321dp"
   
android:text="Hellow"
   
android:background="#CCCCCCCC"
/>

 

 

 

1. Java 코드로 삭제

 

java에서 삭제하기 위해 Acitvity.java를 열고 onCreate()에 코드를 추가 합니다.

여기서 추가하는 코드의 위치가 중요합니다. layout 이전에 추가를 합니다.

 

@Override
protected void onCreate(Bundle savedInstanceState) {
   
super.onCreate(savedInstanceState);

    requestWindowFeature(Window.
FEATURE_NO_TITLE);
   
getSupportActionBar().hide();

   
setContentView(R.layout.activity_main);

 

 

Title bar가 보이지 않게 되었습니다.

 

 

2. xml로 삭제

 

xml로 타이틀 바를 삭제 하려면 res > themes > themes.xml 파일을 오픈합니다.

아래와 같이 한줄을 추가해 줍니다.

 

<!-- Customize your theme here. -->
<item name="windowNoTitle">true</item>

 

이렇게 한줄만 추가해주면 타이틀 바가 삭제 됩니다.  결과는 동일하게 나옵니다.

 

 

 

3. 전체 코드

 

 

수정된 코드 소스만 올려 봅니다.

 

 

3.1 MainActivity.java

 

public class MainActivity extends AppCompatActivity {

   
@Override
   
protected void onCreate(Bundle savedInstanceState) {
       
super.onCreate(savedInstanceState);

       
requestWindowFeature(Window.
FEATURE_NO_TITLE);
        getSupportActionBar().hide();
       
       
setContentView(R.layout.activity_main);
    }
}

 

 

3.2 themes.xml

 

<resources xmlns:tools="http://schemas.android.com/tools">
    
<!-- Base application theme. -->
   
<style name="Theme.Statusbar2" parent="Theme.MaterialComponents.DayNight.DarkActionBar">
       
<!-- Primary brand color. -->
       
<item name="colorPrimary">@color/purple_500</item>
        <
item name="colorPrimaryVariant">@color/purple_700</item>
        <
item name="colorOnPrimary">@color/white</item>
       
<!-- Secondary brand color. -->
       
<item name="colorSecondary">@color/teal_200</item>
        <
item name="colorSecondaryVariant">@color/teal_700</item>
        <
item name="colorOnSecondary">@color/black</item>
       
<!-- Status bar color. -->
       
<item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item>

       
<!-- Customize your theme here. -->
       
<item name="windowNoTitle">true</item>
    </
style>
</
resources>

 

- copy coding -


+ Recent posts