Di aplikasi android, metode Toolbar.setTitle tidak berpengaruh - nama aplikasi ditampilkan sebagai judul

298

Saya mencoba membuat aplikasi sederhana menggunakan perpustakaan android-support-v7: 21.

Cuplikan kode:
MainActivity.java

public class MainActivity extends ActionBarActivity {

    Toolbar mActionBarToolbar;

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

        mActionBarToolbar = (Toolbar) findViewById(R.id.toolbar_actionbar);            
        mActionBarToolbar.setTitle("My title");
        setSupportActionBar(mActionBarToolbar);
}

activity_main.xml

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    android:orientation="vertical">

    <android.support.v7.widget.Toolbar            
        android:id="@+id/toolbar_actionbar"
        android:background="@null"
        android:layout_width="match_parent"
        android:layout_height="?actionBarSize"
        android:fitsSystemWindows="true" />

</LinearLayout>

Tetapi alih-alih "Judul saya" di Toolbar% nama aplikasi% ditampilkan.
Sepertinya setTitlemetode tidak berpengaruh.
Saya ingin menunjukkan "Judul saya".

UPD: Sebelumnya, styles.xmladalah:

<style name="AppTheme" parent="Theme.AppCompat">
    <item name="windowActionBar">false</item>
</style>

Jadi, saya pikir actionbar tidak digunakan. Saya menambahkan NoActionBarke style induk:

<style name="AppTheme" parent="Theme.AppCompat.NoActionBar">
    <item name="windowActionBar">false</item>
</style>

Tapi masalahnya belum terselesaikan.

krossovochkin
sumber
4
FWIW, saya di api level 22, dan saya memiliki masalah yang sama jika memanggil setTitle setelah memanggil setSupportActionBar, tetapi berhasil jika memanggil setTitle sebelumnya . Seperti dijelaskan dalam jawaban di bawah ini, setelah memanggil setSupportActionBar, bilah tindakan mengambil kepemilikan dari bilah alat dan panggilan langsung pada bilah alat mungkin tidak berfungsi. Saya menyadari bahwa dalam pertanyaan Anda , Anda sebenarnya memanggil setTitle sebelum setSupportActionBar, jadi mungkin ini adalah sesuatu yang telah berubah baru-baru ini. Bagaimanapun, menggunakan getSupportActionBar (). SetTitle juga berfungsi.
JHH
Permintaan yang sama ditanyakan di stackoverflow.com/questions/15560904/…
JoboFive
Cobalah - "Bagaimana mengatur judul untuk Aktivitas dengan ToolBar?" link.medium.com/cGVg3zVr0Z
Werder

Jawaban:

559

Menemukan solusinya:

Dari pada:

mActionBarToolbar = (Toolbar) findViewById(R.id.toolbar_actionbar);            
mActionBarToolbar.setTitle("My title");
setSupportActionBar(mActionBarToolbar);

Saya menggunakan:

mActionBarToolbar = (Toolbar) findViewById(R.id.toolbar_actionbar);            
setSupportActionBar(mActionBarToolbar);
getSupportActionBar().setTitle("My title");

Dan itu berhasil.

krossovochkin
sumber
27
bagus, tapi tidak masuk akal untuk bekerja dengan cara ini dan bukan yang lain .... selamat datang di android 101
DoruChidean
28
getSupportActionBar().setTitle("My title");dapat menghasilkan 'java.lang.NullPointerException'
Pratik Butani
8
@PratikButani Selama Toolbar telah ditetapkan sebagai setSupportActionBar () sebelum memanggil getSupportActionBar () mengapa mungkin?
Leon
3
Aha, mudah diselesaikan: menegaskan getSupportActionBar ()! = Null;
Leon
10
Kawan, apakah Anda benar-benar menaikkan komentar @PratikButani berkali-kali? Jika Anda menggunakan tema gaya tanpa bilah tindakan tetapi bilah alat dukungan kustom v7 dan Anda lupa menelepon setSupportActionBar(mToolbar)tentu saja Anda akan mendapatkan pengecualian nol, tetapi jika Anda memanggilnya maka abaikan saja pesan ini. Baca saja - developer.android.com/training/appbar/setting-up.html
user25
115

Bagi siapa saja yang perlu mengatur judul melalui Toolbar beberapa saat setelah menetapkan SupportActionBar, baca ini.

Implementasi internal perpustakaan dukungan hanya memeriksa apakah Toolbar memiliki judul (bukan nol) pada saat SupportActionBar diatur. Jika ada, maka judul ini akan digunakan sebagai pengganti judul jendela. Anda kemudian dapat menetapkan judul dummy saat Anda memuat judul asli.

mActionBarToolbar = (Toolbar) findViewById(R.id.toolbar_actionbar);
mActionBarToolbar.setTitle("");
setSupportActionBar(mActionBarToolbar);

kemudian...

mActionBarToolbar.setTitle(title);
sorianiv
sumber
Ini bekerja, tetapi mengapa ini harus dilakukan tidak masuk akal bagi saya. Adakah yang punya penjelasan mengapa ini berhasil?
Maxwell
1
@ Maxwell Masuk akal mengingat desain interaksi actionbar / toolbar. Aktivitas akan menampilkan judul, jika Anda menyediakan bilah alat tanpa judul itu, android menganggap Anda menginginkan kontrol judul Aktivitas tradisional.
Drew
1
mActionBarToolbar.setTitle (getResources (). getString (R.string.app_name)); akan memastikan ada judul default yang bagus sambil tetap mempertahankan efek magis yang sama dari jawabannya
Eslam Sameh Ahmed
@Bevor berfungsi, lihat saja jumlah suara jawaban ini ... Anda baru saja melakukan kesalahan
user25
@ user25, ini juga bekerja buruk untuk saya, itu menghapus panah kembali. Kemudian saya menemukan solusi lain: stackoverflow.com/a/40571324/2914140 . this.setTitle("Title"), di mana this- adalah referensi ke suatu aktivitas.
CoolMind
80

Jawaban di atas sepenuhnya benar tetapi tidak berhasil untuk saya.

Saya memecahkan masalah saya dengan hal-hal berikut.

Sebenarnya XML saya seperti itu:

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/confirm_order_mail_layout"
    android:layout_width="match_parent"
    android:layout_height="fill_parent">

    <android.support.design.widget.AppBarLayout
        android:id="@+id/confirm_order_appbar_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

        <android.support.design.widget.CollapsingToolbarLayout
            android:id="@+id/confirm_order_list_collapsing_toolbar"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:fitsSystemWindows="true"
            app:contentScrim="?attr/colorPrimary"
            app:expandedTitleMarginEnd="64dp"
            app:expandedTitleMarginStart="48dp"
            app:layout_scrollFlags="scroll|enterAlways">

            <android.support.v7.widget.Toolbar
                android:id="@+id/confirm_order_toolbar_layout"
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                android:background="?attr/colorPrimary"
                app:layout_scrollFlags="scroll|enterAlways"
                app:popupTheme="@style/ThemeOverlay.AppCompat.Light">

            </android.support.v7.widget.Toolbar>
        </android.support.design.widget.CollapsingToolbarLayout>
    </android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>

Saya telah mencoba semua opsi dan setelah semua saya baru saja dihapus CollapsingToolbarLayoutkarena saya tidak perlu menggunakan yang khusus XMLJadi XML Final saya seperti:

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/confirm_order_mail_layout"
    android:layout_width="match_parent"
    android:layout_height="fill_parent">

    <android.support.design.widget.AppBarLayout
        android:id="@+id/confirm_order_appbar_layout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

        <android.support.v7.widget.Toolbar
            android:id="@+id/confirm_order_toolbar_layout"
            android:layout_width="match_parent"
            android:layout_height="?attr/actionBarSize"
            android:background="?attr/colorPrimary"
            app:layout_scrollFlags="scroll|enterAlways"
            app:popupTheme="@style/ThemeOverlay.AppCompat.Light">

        </android.support.v7.widget.Toolbar>
    </android.support.design.widget.AppBarLayout>
</android.support.design.widget.CoordinatorLayout>

Sekarang Anda harus menggunakan setTitle()jawaban seperti di atas:

mActionBarToolbar = (Toolbar) findViewById(R.id.confirm_order_toolbar_layout);            
setSupportActionBar(mActionBarToolbar);
getSupportActionBar().setTitle("My Title");

Sekarang Jika Anda ingin menggunakan CollapsingToolbarLayoutdan Toolbarsama, maka Anda harus menggunakan setTitle()dariCollapsingToolbarLayout

CollapsingToolbarLayout collapsingToolbarLayout = (CollapsingToolbarLayout) findViewById(R.id.confirm_order_mail_layout);
collapsingToolbarLayout.setTitle("My Title");

Semoga ini akan membantu Anda. Terima kasih.

Pratik Butani
sumber
1
Itu masuk akal, menghapus masalah yang CollapsingToolbarLayoutdiselesaikan
blueware
2
Bagi saya trik dengan menetapkan judul untuk CollapsingToolbarLayout berfungsi. Terima kasih banyak!
mysliwiec_tech
Bisakah saya mengganti subtitle CollapsingToolbarLayout?
nrofis
2
Karena bilah alat bersarang di bawah CollapsingToolbarLayout, maka bilah alat akan ditimpa oleh susunan bilah alat bilah alat. Ini bekerja untuk saya.
neilQ5
2
Bro, kamu menyelamatkan hidupku !!! Anda harus menetapkanSupportActionbar sebelum menggunakan collapsingToolbarLayout.seTitle ("Judul");
Jacky Chong
35

Cukup Anda dapat mengubah nama aktivitas dengan menggunakan

Acitivityname.this.setTitle("Title NAme");
roshan posakya
sumber
1
Atau hanya title = "Title"di Kotlin atau mungkin this.setTitle("Title")di Jawa.
CoolMind
33

Coba ini, Anda dapat menentukan judul secara langsung dalam XML:

 <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="?attr/colorPrimary"
        app:title="some title"
        app:popupTheme="@style/AppTheme.PopupOverlay">
Axrorxo'ja Yodgorov
sumber
Judul termudah tetapi tetap saya perlu ubahsuaian secara dinamis, jika Anda punya ide
aya salama
15

Untuk mengatur judul untuk setiap judul fragmen Navbar

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) 
{
    myView = inflater.inflate(R.layout.second_layout, container, false);
    getActivity().setTitle("title");

    return myView;
}
roshan posakya
sumber
12

Coba ini .. metode ini bekerja untuk saya .. !! semoga bisa membantu seseorang .. !!

<android.support.v7.widget.Toolbar  
 xmlns:app="http://schemas.android.com/apk/res-auto"  
 android:id="@+id/my_awesome_toolbar"  
 android:layout_width="match_parent"  
 android:layout_height="wrap_content"  
 android:background="?attr/colorPrimary"  
 android:minHeight="?attr/actionBarSize"  
 app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" >  

<TextView  
   android:id="@+id/toolbar_title"  
   android:layout_width="wrap_content"  
   android:layout_height="wrap_content"  
   android:gravity="center"  
   android:singleLine="true"  
   android:text="Toolbar Title"  
   android:textColor="@android:color/white"  
   android:textSize="18sp"  
   android:textStyle="bold" />  

</android.support.v7.widget.Toolbar>  

Untuk menampilkan logo di bilah alat, coba cuplikan di bawah ini. // Atur drawable

toolbar.setLogo(ContextCompat.getDrawable(context, R.drawable.logo));

Biarkan saya tahu hasilnya.

Ragu Swaminathan
sumber
Terima kasih Ragu Swaminathan .. Saya mencoba menerapkan SupportActionBar dari aktivitas appcompact untuk memberikan judul pada aktivitas saya tetapi tidak dapat melakukannya karena saya perlu memperpanjang BaseGameActivity. Lalu saya pergi untuk toolbar tetapi judul tidak ditampilkan saat berjalan. Metode Anda menggunakan boks teks di dalam bilah alat berfungsi. Merekomendasikan hal ini kepada orang-orang dalam situasi yang sama
Sarun1001
bilah alat memiliki metode untuk mengatur logo aplikasi. periksa jawaban saya yang diperbarui
Ragu Swaminathan
11
 getSupportActionBar().setTitle("Your Title");
Hanisha
sumber
2
Jawaban ini adalah sebuah rintisan dan lebih baik menjadi komentar , karena jawaban pendek seperti ini dapat dianggap berkualitas rendah. Setelah memiliki reputasi yang cukup, Anda dapat berkomentar. Jika Anda tidak memiliki reputasi yang cukup, baca posting ini tentang cara berkontribusi jika Anda belum memiliki reputasi yang cukup.
ascripter
@ascripter itu adalah jawaban
Jemshit Iskenderov
8

Silakan lihat https://code.google.com/p/android/issues/detail?id=77763 . Rupanya itu seharusnya bekerja seperti itu. Setelah Anda memanggil setSupportActionBar()metode panggilan, itu adalah tanggung jawab delegasi ActionBar untuk merutekan panggilan ke tampilan yang benar.

redDragonzz
sumber
1
Apa itu delegasi Actionbar? Di sini setTitle () tidak berfungsi untuk bilah alat maupun untuk bilah tindakan dukungan. Bilah tindakan asli dinonaktifkan di tema. Apa yang salah? Kalau saja lampiran kode sumber berfungsi di Android Studio, saya bisa melacak masalahnya sendiri!
WindRider
6

Saya mencoba mengubah nama bilah alat dari fragmen

Itu membantu saya, saya berharap dapat membantu orang lain

Activity activity = this.getActivity();
Toolbar toolbar = (Toolbar) activity.findViewById(R.id.detail_toolbar);
        if (toolbar != null) {
            activity.setTitle("Title");
        }

//toolbar.setTitle("Title"); did not give the same results

Tangkapan layar: masukkan deskripsi gambar di sini

Nikita G.
sumber
6

Bukan hanya tentang .setTitle

lebih banyak metode Bilah Alat Dukungan (Appcompat v7) onCreatehanya berfungsi dengan

getSupportActionBar().method()

dan tidak bekerja dengannya mToolbar.method()

contoh:

getSupportActionBar().setTitle("toolbar title");
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

meskipun metode selanjutnya berfungsi dengan baik tanpa getSupportActionBar()dionCreate

mToolbar.setVisibility(View.VISIBLE);
mToolbar.setNavigationOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        //
    }

Masalah hanya dengan onCreateacara, Anda masih dapat menggunakan mToolbar.setTitle()nanti daripada mengganggu getSupportActionBar().setTitle(), misalnya jika Anda menambahkan ini di onCreatedalamnya akan berfungsi (karena akan dieksekusi nanti, setelah onCreate)

mHandler.post(new Runnable() {
    @Override
    public void run() {
        mToolbar.setTitle("toolbar title");
    }
});

Saya lebih suka menggunakan solusi ini https://stackoverflow.com/a/35430590/4548520 daripada https://stackoverflow.com/a/26506858/4548520 karena jika Anda mengubah judul berkali-kali (dalam fungsi yang berbeda) lebih nyaman digunakan mToolbar.setTitle()lebih dari getSupportActionBar().setTitle()satu dan Anda tidak melihat pemberitahuan yang mengganggu tentang pengecualian nol seperti dengangetSupportActionBar().setTitle()

pengguna25
sumber
jika Anda ingin mengubah judul berkali-kali dan dan menggunakan bilah alat runtuh, ini akan membantu: stackoverflow.com/questions/26486730/…
user1506104
6

Bagi siapa saja yang perlu mengatur judul melalui Toolbar beberapa saat setelah mengatur SupportActionBar (@sorianiv) DAN Anda Toolbarada di dalam CollapsingToolbarLayout, baca ini:

mToolbarLayout = (CollapsingToolbarLayout) findViewById(R.id.toolbar_layout);
Toolbar toolbar = findViewById(R.id.toolbar);
//toolbar.setTitle(""); // no need to do this
//mToolbarLayout.setTitle("Title"); // if you need an initial title, do this instead
setSupportActionBar(toolbar);

Lalu nanti,

mToolbarLayout.setTitle("New Title");
pengguna1506104
sumber
5

Judul aplikasi tidak akan ditampilkan sebagai judul default pada setiap aktivitas, Anda dapat menyisipkan judul yang berbeda pada setiap aktivitas. Pada file aktivitas Anda di bawah onCreate cukup tempelkan satu baris untuk menetapkan judul,

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        setTitle("Your Title Here");

Cukup ubah teks "Judul Anda Di Sini" menjadi teks Anda.

Mohammad Shohag
sumber
4

Cukup gunakan ini di adaptor Anda, Di mana MainActivity adalah AppCompactActivity Anda. Sebut saja dari mana saja.

((MainActivity) context).getSupportActionBar().setTitle(titles.get(position));
Axay Coolmoco
sumber
4

Saya membuatnya bekerja dengan menggunakan -

toolbar.post(new Runnable() {
            @Override
            public void run() {
                toolbar.setTitle("My Title");
            }
        });
Ankit Aggarwal
sumber
1
Anda tidak perlu menggunakan postjika Anda mengubah judul di utas UI, yang menurut saya adalah 90% kasus.
Vadim Kotov
3

Jika Anda menggunakan CollapsibleToolbarLayoutbersama dengan Toolbarmaka Anda harus menetapkan judul di kedua tata letak

atur Toolbar Anda sebagai bar tindakan dalam onCreatemetode

protected void setUpToolBar() {

    if (mToolbar != null) {
        ((HomeActivity) getActivity()).setSupportActionBar(mToolbar);
        mToolbar.setTitleTextColor(Color.WHITE);
        mToolbar.setTitle("List Detail");
        mToolbar.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                getActivity()
                        .getSupportFragmentManager().popBackStack();
            }
        });
        ((HomeActivity) getActivity()).getSupportActionBar()
                .setDisplayHomeAsUpEnabled(true);
    }
}

Kemudian cukup perbarui judul toolbar menggunakan setTitlemetode

 mToolbar .setTitle(productFromShoppingList.getProductName()); 
 mCollapsingToolbar.setTitle(productFromShoppingList.getProductName());
Hitesh Sahu
sumber
Solusi ini berfungsi jika Anda menemukan bahwa Anda dapat menetapkan judul sekali, tetapi tidak dapat mengubahnya setelah itu. Pastikan Anda menyetel judul Bilah Alat Bongkar.
Hylianpuffball
jika Anda ingin mengubah judul setelah beberapa waktu dengan collapsing toolbar, Anda dapat melakukan ini: stackoverflow.com/questions/26486730/…
user1506104
2

Coba ini:

Kode Xml

<android.support.v7.widget.Toolbar
    android:layout_width="match_parent"
    android:layout_height="120dp"
    android:id="@+id/tool_bar"
    android:background="@color/tablayout"
    android:theme="@style/ToolBarStyle"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/app_name"
        android:layout_gravity="center"
        android:id="@+id/toolbar_title"
        android:textSize="18sp"
        android:textColor="@color/white"/>
    </android.support.v7.widget.Toolbar>

Kode Java

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    toolbar = (Toolbar) findViewById(R.id.tool_bar);
    toolbar_text = (TextView)findViewById(R.id.toolbar_title);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    getSupportActionBar().setDisplayShowTitleEnabled(false);
    toolbar.setLogo(R.drawable.ic_toolbar);
}
Janakipathi Chowdary
sumber
2

Jika tujuan Anda adalah menetapkan string statis di bilah alat, cara termudah untuk melakukannya adalah cukup dengan mengatur label aktivitas di AndroidManifest.xml:

<activity android:name=".xxxxActivity"
          android:label="@string/string_id" />

Bilah alat akan mendapatkan string ini tanpa kode apa pun. (berfungsi untuk saya dengan perpustakaan v27.)

Timores
sumber
2

Saya memiliki perilaku aneh yang mungkin dapat membantu Anda.
Ini berfungsi tetapi tidak berpengaruh hanya pada onCreate:

toolbar.setTitle("title");

Coba gunakan ini di onCreate:

yourActivityName.this.setTitle("title")
pengguna2167877
sumber
2

Untuk mengubah judul untuk setiap aktivitas yang berbeda

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_pizza);
    setTitle(getResources().getText(R.string.title));
}
roshan posakya
sumber
setTitle (R.string.title); Acara lebih mudah, tetapi tidak berhasil
toshkinl
2
 public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);

       //custom toolbaar
       getSupportActionBar().setTitle("Abhijeet");

    }
}
Abhi jeet
sumber
1

Meskipun tidak segera relevan dengan pengaturan khusus ini, saya menemukan bahwa menghapus "CollapsingToolbarLayout" dari XML saya yang membungkus bilah alat saya di dalam AppBarLayout membuat semuanya berfungsi.

Jadi ini:

      <android.support.design.widget.AppBarLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_height="?attr/actionBarSize"
                app:layout_scrollFlags="scroll|enterAlways"
                app:navigationIcon="@drawable/ic_arrow_back_white_24dp" />

        </android.support.design.widget.AppBarLayout>

Alih-alih ini:

        <android.support.design.widget.AppBarLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <android.support.design.widget.CollapsingToolbarLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:id="@+id/collapsingToolbar"
                android:minHeight="?attr/actionBarSize"
                app:layout_scrollFlags="enterAlways|scroll|snap">

                <android.support.v7.widget.Toolbar
                    android:id="@+id/toolbar"
                    android:layout_height="?attr/actionBarSize"
                    app:navigationIcon="@drawable/ic_arrow_back_white_24dp" />
            </android.support.design.widget.CollapsingToolbarLayout>

        </android.support.design.widget.AppBarLayout>

Lalu, saya mengatur judul di aktivitas onCreate, sebelum setSupportActionBar () dipanggil.

Chantell Osejo
sumber
kamu bisa melakukan itu. jika Anda benar-benar memerlukan tata letak bilah alat
menyusut
@ Chantell Osejo ini bekerja untuk saya juga, bahkan saya menggunakan tata letak yang sama. Terima kasih
Paramjit Singh Rana
1

Ini dapat dilakukan dengan mengatur android:labelatribut aktivitas Anda di AndroidManifest.xmlfile:

<activity android:name="my activity"
 android:label="The Title I'd like to display" />

Dan kemudian tambahkan baris ini ke onCreate ():

getSupportActionBar().setDisplayShowTitleEnabled(true);
A-Sharabiani
sumber
0

Pastikan Anda menambahkan opsi ini:

getSupportActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_TITLE);
McLan
sumber
0

Jawabannya ada dalam dokumentasi (yang dapat Anda temukan di sini ):

Untuk menggunakan metode utilitas ActionBar, panggil metode getSupportActionBar () aktivitas. Metode ini mengembalikan referensi ke objek ActionBar appcompat. Setelah Anda memiliki referensi itu, Anda dapat memanggil metode ActionBar untuk menyesuaikan bilah aplikasi. Misalnya, untuk menyembunyikan bilah aplikasi, panggil ActionBar.hide ().

Itulah solusi yang Anda temukan. Bayangkan saja memberikan referensi ke dokumentasi resmi (yang tampaknya sedikit cenderung membaca).

Ely
sumber
0

Di Kotlin Anda dapat melakukan ini:

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.appcompat.widget.Toolbar

class SettingsActivity : AppCompatActivity() {

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_settings)

        val toolbar = findViewById<Toolbar>(R.id.toolbar)
        setSupportActionBar(toolbar)
        supportActionBar?.setDisplayHomeAsUpEnabled(true)
        supportActionBar?.setTitle(R.string.title)

    }

    override fun onSupportNavigateUp() = true.also { onBackPressed() }

}
MatPag
sumber
-2

Ini terjadi karena Anda menggunakan Toolbar dan ActionBar keduanya. Sekarang karena Anda ingin menggunakan Bilah Alat sebagai bilah tindakan, hal pertama yang perlu Anda lakukan adalah menonaktifkan bilah tindakan yang disediakan dekorasi.

Cara termudah adalah memperluas tema Anda Theme.AppCompat.NoActionBar.

Paresh Mayani
sumber
Maaf saya salah paham pertanyaan.
Haresh Chhelana
1
@HareshChhelana Anda mengirim jawaban tetapi tahukah Anda apa masalahnya?
Paresh Mayani
Saya pikir yang terkait tindakan bar set masalah ubin yang Anda berikan seperti itu dan ketika Anda menyadari saya ini saya menghapus ans saya jadi sekarang Anda tidak khawatir tentang saudara saya yang salah paham.
Haresh Chhelana
1
@ PareshMayani terima kasih atas jawaban Anda, tetapi itu tidak menyelesaikan masalah saya. Silakan, periksa pertanyaan yang diperbarui
krossovochkin