appcompat-v7의 툴바에서 제목 제거


170

문서 의는 Toolbar말한다

앱에서 로고 이미지를 사용하는 경우 제목과 자막을 생략하는 것이 좋습니다.

제목을 제거하는 올바른 방법은 무엇입니까?


빈 문자열로 설정하면 문제는 어디에 있습니까? 아이콘을 사용하는 사용자 정의 레이아웃을 사용해야한다고 생각하지 않습니다. 과잉 추측?
바그너 마이클

3
@maffelbaffel 빈 문자열을 설정하는 데 아무런 문제가 없지만 부적절한 느낌입니다. 그러나 커스텀 레이아웃을 사용하는 것은 과잉 일 것입니다.
timemanx

1
내가해야 할 일을했을 :toolbar.setTitle("");
페란 Maylinch

1
@ FerranMaylinch 예, 이것은 나에게도 효과가 있습니다! toolbar.setTitle (null);을 사용합니다 . 기본 제목으로 애플리케이션 이름이 표시됩니다. 그래서 toolbar.setTitle ( ""); 잘 작동합니다.
ULHAS PATIL

답변:


554
getSupportActionBar().setDisplayShowTitleEnabled(false);

4
이 답변과 David_E의 답변은 (으)로 전화 한 후 바로 전화를 받으면 나와 같습니다 setSupportActionBar(). 이 답변이 것 때문에 선택하는 것은 공식 기준이 관련된 발명 할 수있는 공식적인 방법이 될 수 있습니다 :Set whether an activity title/subtitle should be displayed.
C0D3LIC1OU5

액션 바와 같은 툴바에만 해당되지만 깨끗한 바에는 적용되지 않습니다!
iscariot

2
style.xml을 사용하여 제거하는 방법? 도와주세요
Anand Savjani

나를 위해 일했다. 이것이 작동하려면 "appcompat_v7 : v21"을 사용해야합니다.
V_J

위의 방법으로 NullPonterException이 발생하지 않는지 확인해야합니다. if (getSupportActionBar ()! = null) getSupportActionBar (). setDisplayShowTitleEnabled (false);
iOSAndroidWindowsMobileAppsDev

68

툴바 제목을 숨기거나 변경하는 올바른 방법은 다음과 같습니다.

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);

이것은 당신이 호출 할 때하기 때문에 setSupportActionBar(toolbar);, 다음은 getSupportActionBar()작업 표시 줄이 아닌 도구 모음 개체에 모든 것을 처리의 책임이 있습니다.

여기를 참조 하십시오


9
setTitle (null) 결과 앱 이름이 제목이됩니다. setTitle ( "")이 저에게 효과적이었습니다.
user1354603

1
xml에서 <Toolbar app : title = ""// title은 공백입니다. 작업
Dan Alboteanu

21

이 시도...

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

    .....

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar_landing_page);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayShowTitleEnabled(false);

    .....

 }

19

이것에 대한 나의 대답의 이유는 가장 많이 찬성 된 답변 자체가 내 문제를 해결하지 못했기 때문입니다. 나는 이것을 함으로써이 문제를 알아 냈습니다.

<activity android:name="NAME OF YOUR ACTIVITY"
    android:label="" />

이것이 다른 사람들에게도 도움이되기를 바랍니다.


2
이것은 좋은 생각이 아닙니다. <intent-filter>사용자가 URL (예 : URL)을 클릭하여 앱을 열 수 있도록 해당 활동 이있는 경우 명확성 대화 상자에 제목이 없습니다!
Albert Vila Calvo 2016

10

또 다른 방법은에서 제목을 제거하는 Toolbar것입니다 null지금처럼 아웃 :

Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
toolbar.setTitle(null);

4

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayShowTitleEnabled(false);
    //toolbar.setNavigationIcon(R.drawable.ic_toolbar);
    toolbar.setTitle("");
    toolbar.setSubtitle("");
    //toolbar.setLogo(R.drawable.ic_toolbar);

3

툴바를 사용하는 경우 아래 코드를 시도하십시오.

toolbar.setTitle("");

2

당신은 모두 같은 방식으로 작동으로 울부 짖는 소리 중 하나를 사용할 수 있습니다 getSupportActionBar().setDisplayShowTitleEnabled(false); getSupportActionBar().setTitle(null);

사용처 :

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayShowTitleEnabled(false);

또는 :

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 
    getSupportActionBar().setTitle(null);

2
 Toolbar actionBar = (Toolbar)findViewById(R.id.toolbar);
    actionBar.addView(view);
    setSupportActionBar(actionBar);
    getSupportActionBar().setDisplayShowTitleEnabled(false);

이 줄에 주목 getSupportActionBar().setDisplayShowTitleEnabled(false);


actionBar.addView (view); 툴바에 추가하고있는 커스텀 뷰입니다
suulisin


1

ToolBar의 제목 / 라벨을 숨기는 올바른 방법은 다음 코드입니다.

  Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setTitle(null);

1

이것이 올바른 방법인지 아닌지는 모르겠지만 스타일을 다음과 같이 변경했습니다.

<style name="NoActionBarStyle" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
    <item name="windowActionBar">false</item>
    <item name="android:windowNoTitle">true</item>
</style>

1

기본 툴바를 사용하는 경우이 코드 줄을 추가 할 수 있습니다

Objects.requireNonNull(getSupportActionBar()).setDisplayShowTitleEnabled(false);

1

명백하지만 App Theme디자인 에서 선택은 레이아웃 판 중 초안을 표시하기위한 것이며 휴대 전화를 보는 실제 응용 프로그램과 관련이 없습니다. 제 경우에는 디자인에 제목 표시 줄이 없지만 제목 표시 줄은 항상 휴대 전화에 있습니다.

저는 Android 프로그래밍으로 시작하여 올바른 솔루션을 찾기 위해 싸우고 있습니다.

AndroidManifest.xml스타일을 미리 정의해야하기 때문에 매니페스트 파일 ( ) 만 변경하면 충분하지 않습니다 styles.xml. 또한 레이아웃 파일을 변경할 수 없습니다.

제안 된 모든 해결책은 JavaKotlin에게 실패했습니다. 그들 중 일부는 앱을 중단시킵니다. 그리고 (나처럼) 앱에서 제목 표시 줄을 사용하지 않으려는 경우 정적 솔루션이 더 깨끗합니다.

나에게 2019 (Android Studio 3.4.1)에서 작동하는 유일한 솔루션은 다음과 같습니다.

에서 styles.xml(응용 프로그램 / 고해상도 / 값 아래) 줄을 추가합니다 :

   <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>

이후 AndroidManifest.xml(앱 / 매니페스트 아래)

바꾸다

android:theme="@style/AppTheme">

으로

android:theme="@style/AppTheme.NoActionBar">

0

아무도 언급하지 않았습니다.

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
        super.onCreate(savedInstanceState);
    }

답변하기 전에 질문을주의 깊게 읽으십시오. OP는 툴바에서 제목을 삭제하도록 요청했습니다
Bhavik Mehta


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.