เอกสารของToolbar
กล่าวว่า
หากแอปใช้ภาพโลโก้ก็ควรพิจารณาละเว้นชื่อและคำบรรยายอย่างยิ่ง
วิธีที่เหมาะสมในการลบชื่อเรื่องคืออะไร?
toolbar.setTitle("");
เอกสารของToolbar
กล่าวว่า
หากแอปใช้ภาพโลโก้ก็ควรพิจารณาละเว้นชื่อและคำบรรยายอย่างยิ่ง
วิธีที่เหมาะสมในการลบชื่อเรื่องคืออะไร?
toolbar.setTitle("");
คำตอบ:
getSupportActionBar().setDisplayShowTitleEnabled(false);
setSupportActionBar()
มา การเลือกคำตอบนี้เพราะนี่เป็นวิธีที่เป็นทางการที่จะทำตามการอ้างอิงอย่างเป็นทางการ:Set whether an activity title/subtitle should be displayed.
วิธีที่ถูกต้องในการซ่อน / เปลี่ยนชื่อแถบเครื่องมือคือ:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
เพราะเมื่อคุณโทรsetSupportActionBar(toolbar);
แล้วgetSupportActionBar()
จะมีหน้าที่ในการจัดการทุกอย่างไปยังแถบการกระทำไม่ใช่วัตถุแถบเครื่องมือ
ดูที่นี่
ลองสิ่งนี้ ...
@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);
.....
}
เหตุผลสำหรับคำตอบของฉันนี้เป็นเพราะคำตอบ upvoted ที่สุดเองไม่สามารถแก้ปัญหาของฉัน ฉันพบปัญหานี้ด้วยการทำเช่นนี้
<activity android:name="NAME OF YOUR ACTIVITY"
android:label="" />
หวังว่านี่จะช่วยผู้อื่นด้วย
<intent-filter>
กิจกรรมนั้นเพื่อให้ผู้ใช้สามารถเปิดแอปของคุณโดยคลิกที่ URL (ตัวอย่าง) กล่องโต้ตอบแก้ความกำกวมจะไม่มีชื่อใด ๆ !
อีกวิธีในการลบชื่อออกจากคุณToolbar
คือทำnull
แบบนั้น:
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
toolbar.setTitle(null);
นี้
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);
หากคุณใช้ Toolbar ลองรหัสด้านล่าง:
toolbar.setTitle("");
คุณสามารถใช้การร้องอย่างใดอย่างหนึ่งเป็นทั้งการทำงานแบบเดียวกัน:
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);
Toolbar actionBar = (Toolbar)findViewById(R.id.toolbar);
actionBar.addView(view);
setSupportActionBar(actionBar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
จดบรรทัดนี้ getSupportActionBar().setDisplayShowTitleEnabled(false);
เพียงเพิ่มคุณสมบัตินี้ในแถบเครื่องมือของคุณ
app:title=" "
วิธีที่ถูกต้องในการซ่อนหัวเรื่อง / ฉลากของแถบเครื่องมือรหัสต่อไปนี้:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
getSupportActionBar().setTitle(null);
ฉันไม่รู้ว่านี่เป็นวิธีที่ถูกต้องหรือไม่ แต่ฉันเปลี่ยนสไตล์ของฉันเช่นนี้
<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>
หากคุณใช้แถบเครื่องมือเริ่มต้นคุณสามารถเพิ่มโค้ดนี้ได้
Objects.requireNonNull(getSupportActionBar()).setDisplayShowTitleEnabled(false);
เห็นได้ชัดว่า แต่การApp Theme
เลือกในการออกแบบเป็นเพียงการแสดงร่างระหว่างรุ่นเค้าโครงไม่เกี่ยวข้องกับแอพจริงที่มองในโทรศัพท์มือถือ ในกรณีของฉันไม่มีแถบชื่อเรื่องในการออกแบบ แต่แถบชื่อเรื่องจะอยู่ในโทรศัพท์มือถือเสมอ
ฉันเริ่มต้นด้วยการเขียนโปรแกรม Android และต่อสู้เพื่อค้นหาโซลูชันที่เหมาะสม
เพียงแค่เปลี่ยนไฟล์ manifest ( AndroidManifest.xml
) styles.xml
ไม่เพียงพอเพราะความจำเป็นในสไตล์ที่จะกำหนดไว้ล่วงหน้า ยังไม่มีประโยชน์เปลี่ยนไฟล์เค้าโครง
โซลูชันที่เสนอทั้งหมดในJava
หรือKotlin
ล้มเหลวสำหรับฉัน บางคนใช้แอปผิดพลาด และถ้าไม่มีใคร (อย่างฉัน) ตั้งใจที่จะใช้แถบชื่อเรื่องในแอปโซลูชันคงที่นั้นสะอาดกว่า
สำหรับฉันทางออกเดียวที่ใช้ได้ในปี 2019 (Android Studio 3.4.1) คือ:
ในstyles.xml
(ใต้แอพ / res / values) เพิ่มบรรทัด:
<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">
ไม่มีใครพูดถึง:
@Override
protected void onCreate(Bundle savedInstanceState) {
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
super.onCreate(savedInstanceState);
}
toolbar.setTitle(null);
// ลบชื่อ
Toolbar toolbar = findViewById(R.id.myToolbar);
toolbar.setTitle("");