2

Когда я запускаю приложения в эмуляторе, я понимаю, что панель навигации, в которой отображается имя приложения, отсутствует. Могу я узнать, что происходит?Панель навигации Android Studio, показывающая имя приложения отсутствует?

public class MainActivity extends Activity implements OnClickListener { 

EditText first_name; 
EditText last_name; 
Button button_submit; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    first_name = (EditText) findViewById(R.id.first_name); 
    last_name = (EditText) findViewById(R.id.last_name); 
    button_submit = (Button) findViewById(R.id.button_submit); 
    button_submit.setOnClickListener(this); 

} 
@Override 
public void onClick(View v) { 
    Intent intent = new Intent(this, ViewActivity.class); 
    intent.putExtra("first_name", first_name.getText().toString()); 
    intent.putExtra("last_name", last_name.getText().toString()); 
    startActivity(intent); 
    } 
} 

manifest.xml

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
package="com.yuqk.intent_usage"> 

<application 
    android:allowBackup="true" 
    android:icon="@mipmap/ic_launcher" 
    android:label="@string/app_name" 
    android:supportsRtl="true" 
    android:theme="@style/AppTheme"> 
    <activity android:name=".MainActivity"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity android:name=".ViewActivity"></activity> 
</application> 

Style.xml

<resources> 
<!-- Base application theme. --> 
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
</style> 

Пожалуйста, обратитесь к скриншоту для справки .. Спасибо!

screenshot

+0

Вы добавили 'toolbar' в xml и java-код ??? – Ironman

ответ

3

Вероятно, у вас есть

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

в вашем AndroidManifest.xml. Если да, то вам необходимо изменить его

android:theme="@style/AppTheme" 

(предполагается, что вы AppTheme определены в styles.xml с родителем parent="Theme.AppCompat.Light.DarkActionBar" или аналогичный).

+0

android: theme = "@ style/AppTheme" Это по умолчанию, я ничего не менял. – gosulove

+0

Пожалуйста, покажите свои 'AndroidManifest.xml' и' styles.xml'. – Mikhail

+0

PLZ еще раз проверить – gosulove

1

Если у вас есть toolbar включены в XML, добавьте эту строку кода внутри onCreate() метода, сразу после setContentView(R.layout.activity_main);

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
setSupportActionBar(toolbar); 
+0

Это тема по умолчанию, я ничего не менял. Я только что создал проект и запустил его. Почему мне нужно изменить так много вещей, чтобы показать панель инструментов? – gosulove

+0

Ваша проблема, кажется, больше, чем эта. Но эта строка кода также по умолчанию и обязательна.Если я удалю эти строки в рабочем приложении, я все равно смогу увидеть свою панель инструментов, но она будет пустой. Напишите эти строки и посмотрите изменения – Marat

0

Это может, что вы изменили Style.xml файл с тематическим стилем NoActionBar

, пожалуйста, измените его в <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">

, а затем запустить

2

Проверьте это, если вы добавляете toolbar в XML-файл, как этот

<android.support.design.widget.AppBarLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:theme="@style/AppTheme.AppBarOverlay"> 

     <android.support.v7.widget.Toolbar 
      android:id="@+id/toolbar" 
      android:layout_width="match_parent" 
      android:layout_height="?attr/actionBarSize" 
      android:background="?attr/colorPrimary" 
      app:popupTheme="@style/AppTheme.PopupOverlay" /> 

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

затем добавьте этот код в файл MainActivity.java.

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
setSupportActionBar(toolbar); 

и в Manifest.xml вы должны использовать эту тему.

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

styles.xml у вас есть этот

<!-- Base application theme. --> 
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
     <!-- Customize your theme here. --> 
     <item name="colorPrimary">@color/colorPrimary</item> 
     <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
     <item name="colorAccent">@color/colorAccent</item> 
    </style> 

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

android: theme = "@ style/AppTheme" Это тема по умолчанию, я ничего не изменил. Я только что создал проект и запустил его. Почему мне нужно изменить так много вещей, чтобы показать панель инструментов? – gosulove

+0

@gosulove вам нужно пройти этот шаблон .. потому что если вы установили тему «NoActionBar», тогда «ActionBar» отключается, и вы можете добавить «Toolabr» в это место, а две другие вещи, о которых я упоминаю, - это показать «Панель инструментов» '. – Ironman

+0

Нет, я не установил «NoActionBar». Его по умолчанию android: theme = "@ style/AppTheme" – gosulove

Смежные вопросы