android: прослушиваемая панель инструментов во вторичном действии

#java #android

#java #Android

Вопрос:

Я пытаюсь реализовать панель инструментов во втором действии. Но у меня с этим проблемы.

Activity.java (Добавить активность)

 import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.Toolbar;
import android.view.View;
import android.widget.Button;

public class AddActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_add);
    initToolbar();
    Button close = (Button) findViewById(R.id.button2222);
    close.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            finish();
        }
    });
}

private void initToolbar(){
    Toolbar toolbar = (Toolbar) findViewById(R.id.add_app_bar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setIcon(R.drawable.ic_action_navigation_close);

}
}
  

файл app_bar

 <?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.Toolbar android:id="@ id/generic_toolbar"
android:background="@color/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay"
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_height="wrap_content"/>
  

файл макета действия

 <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@ id/activity_add"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.daveslab.wideview.AddActivity">

<include
    android:id="@ id/add_app_bar"
    layout="@layout/app_bar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"/>

<Button
    android:text="Button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_alignParentEnd="true"
    android:layout_marginEnd="129dp"
    android:id="@ id/button2222" />

</RelativeLayout>
  

проблемы:
— панель уведомлений белая
— панель приложений не имеет теней
— он не работает как панель инструментов

Я также пробовал (макет основной панели инструментов):

 <?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"              
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.daveslab.wideview.MainActivity">

<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>

<android.support.design.widget.FloatingActionButton
    android:id="@ id/fab"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|end"
    android:layout_margin="@dimen/fab_margin"
    android:src="@drawable/ic_create_white_48px" />

<include layout="@layout/content_main" />

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

Ответ №1:

Решено, я добавил новое действие с областью панели инструментов, установленной правильно (только в AndroidStudio 2.1 )