Saya ingin menyembunyikan bilah judul untuk beberapa aktivitas saya. Masalahnya adalah saya menerapkan gaya ke semua kegiatan saya, oleh karena itu saya tidak bisa begitu saja mengatur tema @android:style/Theme.NoTitleBar
.
Menggunakan tema NoTitleBar sebagai induk untuk gaya saya akan menghapus bilah judul dari semua aktivitas saya.
Bisakah saya menetapkan item gaya judul tidak di suatu tempat?
android
android-layout
titlebar
Janusz
sumber
sumber
Anda dapat memodifikasi
AndroidManifest.xml
:atau gunakan
android:theme="@android:style/Theme.Black.NoTitleBar"
jika Anda tidak membutuhkan Aktivitas layar penuh.Catatan: Jika Anda pernah menggunakan tampilan 'default' sebelumnya, Anda mungkin juga harus mengubah kelas induk dari
AppCompatActivity
menjadiActivity
.sumber
android:theme="@android:style/Theme.Black.NoTitleBar"
mungkin lebih berguna kecuali Anda membuat gameSaya sekarang melakukan yang berikut.
Saya menyatakan gaya mewarisi segalanya dari gaya umum saya dan kemudian menonaktifkan titleBar.
Sekarang saya dapat mengatur gaya ini untuk setiap Kegiatan di mana saya ingin menyembunyikan bilah judul menimpa gaya aplikasi yang luas dan mewarisi semua informasi gaya lainnya, sehingga tidak ada duplikasi dalam kode gaya.
Untuk menerapkan gaya ke Aktivitas tertentu, buka
AndroidManifest.xml
dan tambahkan atribut berikut keactivity
tag;sumber
Saya tidak suka
this.requestWindowFeature(Window.FEATURE_NO_TITLE);
karena bilah judul muncul sebentar, lalu menghilang.Saya juga tidak suka
android:theme="@android:style/Theme.NoTitleBar"
karena saya kehilangan semua perubahan Holo 3.0+ yang dilakukan oleh pengguna perangkat baru. Jadi saya menemukan solusi ini.Di folder res / values Anda buat file bernama styles.xml (Jika belum ada). Di file itu tempatkan kode berikut:
Selanjutnya buat res / values-v11 dengan file styles.xml lain (Sekali lagi ini mungkin sudah ada). Di file itu tempatkan kode berikut:
Dan jika Anda menargetkan 4.0+, buat folder res / values-v14 dengan file styles.xml yang lain (Ya mungkin sudah ada di sana). Di file itu tempatkan kode berikut:
Terakhir, dengan semua file ini dibuat, buka file AndroidManifiest.xml Anda, Anda dapat menambahkan kode:
ke tag aktivitas dari aktivitas yang Anda tidak ingin judul atau tag aplikasi jika Anda ingin berlaku untuk seluruh aplikasi.
Sekarang pengguna Anda akan mendapatkan tema yang terkait dengan versi perangkat mereka dengan tata letak layar yang Anda inginkan.
PS Mengubah nilai menjadi
android:theme="@style/Theme.FullScreen"
akan memiliki efek yang sama, tetapi juga menghapus bilah Pemberitahuan.sumber
Bilah judul dapat dihapus dengan dua cara seperti yang disebutkan pada halaman Android pengembang:
Dalam
manifest.xml
file:Tambahkan berikut ini
application
jika Anda ingin menghapusnya untuk semua aktivitas dalam aplikasi:Atau untuk aktivitas tertentu:
sumber
jawaban yang benar mungkin adalah tidak memperpanjang ActionbarActivity alih-alih hanya memperpanjang Aktivitas
jika Anda masih menggunakan aktivitas actionbar sepertinya ini berfungsi:
sepertinya ini juga berfungsi:
saya bisa melakukan seperti yang ditulis Scott Biggs. jenis pekerjaan ini. kecuali tidak ada tema saat itu. maksud saya latar belakang menu pengaturan transparan:
ubah saja
untuk Aktivitas atau FragmentActivity
namun saya bisa membuatnya terlihat cukup baik menggunakan desain material dan tidak menghapus actionbar: https://gist.github.com/shimondoodkin/86e56b3351b704a05e53
itu adalah dengan contoh styling actionbar kompatibilitas desain material.
sumber
apa yang bekerja untuk saya:
1- di styles.xml:
2- di MainActivity
dalam manifes mewarisi gaya:
sumber
getSupportActionBar().hide();
dalam onCreate () {} akan melakukan pekerjaanJika Anda menggunakan
this.requestWindowFeature(Window.FEATURE_NO_TITLE)
pengguna masih dapat melihat bilah judul hanya sesaat selama animasi peluncuran ketika aktivitas dimulaionCreate
. Jika Anda menggunakan@android:style/Theme.Black.NoTitleBar
seperti yang ditunjukkan di bawah ini maka bilah judul tidak akan ditampilkan selama animasi peluncuran.contoh di atas jelas akan menimpa tema aplikasi Anda yang sudah ada, jika Anda memiliki tema yang sudah ada kemudian tambahkan
<item name="android:windowNoTitle">true</item>
ke dalamnya.sumber
ketika saya mencoba menggunakan semua jawaban yang tervvotasikan tinggi itu, aplikasi saya selalu macet. (saya pikir itu ada hubungannya dengan "@android: style"?)
Solusi terbaik bagi saya adalah menggunakan yang berikut:
Tidak ada bilah judul / judul lagi. Cukup letakkan di
<application>...</application>
atau<activity>...</activity>
tergantung jika Anda (tidak) menginginkannya di seluruh aplikasi atau hanya aktivitas tertentu.sumber
Buat tema seperti di bawah ini.
sumber
Menambahkan
<item name="android:windowNoTitle">true</item>
di dalam AppTheme (styles.xml)
sumber
Cukup gunakan
getActionBar().hide();
dalamonCreate()
metode aktivitas utama Anda .sumber
Anda hanya perlu mengubah
AppTheme
gaya di Style.xml jika Anda mengganti definisi dariDarkActionBar
untuk
NoActionBar
AppTheme didefinisikan dalam AndroidManifast.xml
sumber
Sebab
AppCompat
, solusi berikut berhasil untuk saya:Tambahkan gaya tema baru tanpa bilah tindakan di
styles.xml
dan setel Andaparent="Theme.AppCompat.NoActionBar"
.Sekarang terapkan gaya tema yang sama untuk aktivitas splash screen Anda di
androidManifest.xml
Ini hasilnya:
sumber
Anda dapat menggunakan kode ini di file java Anda
tambahkan baris ini sebelum Anda mengatur atau memuat tampilan Anda
sumber
Dalam
onCreate
metode Anda , gunakan cuplikan berikut:sumber
Tambahkan keduanya untuk tema yang Anda gunakan:
sumber
<item name="windowActionBar">false</item>
menyebabkan aplikasi macet. Mungkin inilah yang dimaksud @ChrisAllinsonTambahkan gaya ini ke file style.xml Anda
Setelah itu rujuk nama gaya ini ke androidManifest.xml Anda di aktivitas pertikular di mana Anda tidak ingin melihat bilah judul, seperti di bawah ini.
sumber
android:
awalan sebelum nama-nama di blok kode pertama Anda :)Saya menggunakan widget dukungan Toolbar v7. Jadi, untuk dapat menghapus atau menyembunyikan Judul kita perlu menulis ini.
sumber
Atau jika Anda ingin menyembunyikan / menampilkan bilah judul kapan saja:
sumber
Dalam kasus saya, jika Anda menggunakan android studio 2.1, dan kompilasi versi SDK Anda adalah 6.0, maka cukup buka file manifest.xml Anda, dan ubah kode berikut:
Ini kodenya:
Dan di sini adalah snip shoot (lihat kode highlight):
sumber
Ini Memecahkan masalah saya
Dalam manifestasikan aktivitas saya:
Dengan gaya di bawah nama "AppTheme":
sumber
Untuk menyembunyikan bilah Judul dan Tindakan, saya melakukan ini:
Dalam tag aktivitas Manifest:
Di Activity.java sebelum setContentView:
yaitu,
// Hapus bilah judul
// Hapus bilah notifikasi
CATATAN : Anda harus menjaga garis-garis ini sebelumnya
setContentView
sumber
Jawaban pertama adalah amfibol. ini penjelasan saya: add:
dalam metode oncreate ().
sebelum:
(tidak hanya sebelum setContentView) jika tidak melakukan ini Anda akan mendapatkan forceclose. Beri +1 jawaban ini.
sumber
Saya menemukan dua alasan mengapa kesalahan ini terjadi.
Satu. Bendera Window sudah diatur
super.onCreate(savedInstanceState);
di dalam di mana Anda mungkin ingin menggunakan urutan perintah berikut:Dua. Anda memiliki tombol Back / Up di dalam TitleBar, yang berarti bahwa aktivitas saat ini adalah anak hirarkis dari aktivitas lain, dalam hal ini Anda mungkin ingin berkomentar atau menghapus baris kode ini dari dalam
onCreate
metode.sumber
Ini adalah bagaimana kode lengkap terlihat. Perhatikan impor android.view.Window.
sumber
Tambahkan theme @ style / Theme.AppCompat.Light.NoActionBar dalam aktivitas Anda di AndroidManifest.xml seperti ini
sumber
Jika Anda melakukan apa yang dikatakan pengguna YaW dan Doug Paul , maka Anda harus ingat bahwa fitur jendela harus diatur sebelum memanggil setContentView. Jika tidak, Anda akan mendapatkan pengecualian.
sumber
tambahkan file manifiest,
tambahkan baris berikut ke file java Anda,
sumber
Saya menggunakan Android Xamarin dan ini berhasil untuk saya.
sumber