Сделать заголовок моего навигационного ящика кликабельным (сделать просмотр изображения кликабельным) - PullRequest
0 голосов
/ 09 июня 2019

У меня есть проблема в моем коде, приложение не выполняет кликабельное изображение и не показывает сообщение Toast, когда я нажимаю на него

я уже пробовал эту ссылку, но не работал OnClick для заголовка ящика навигации не работает

Это моя основная деятельность:

    NavigationView navigationView = (NavigationView) 
    findViewById(R.id.nav_view);
    navigationView.setNavigationItemSelectedListener(this);

     View headerview = navigationView.getHeaderView(0);
     ImageView imageButton = (ImageView) 
     headerview.findViewById(R.id.login);

    LinearLayout header = (LinearLayout) 
    headerview.findViewById(R.id.header);
     header.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
             Toast.makeText(getApplicationContext(),"Hello 
     Javatpoint",Toast.LENGTH_SHORT).show();
         }
     });

Это мой заголовок xml:

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="@dimen/nav_header_height"
android:background="@color/splashBackground"
android:gravity="bottom"
android:id="@+id/header"
android:orientation="vertical"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingBottom="@dimen/activity_vertical_margin"

android:theme="@style/ThemeOverlay.AppCompat.Dark">

<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="75dp"
    android:layout_marginTop="10dp"
    android:layout_marginBottom="15dp"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="100dp"
        android:layout_height="80dp"
        android:contentDescription="@string/nav_header_desc"
        android:paddingTop="@dimen/nav_header_vertical_spacing"
        app:srcCompat="@drawable/realprolinklogo" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"

        android:text="REAL PROLINK"
        android:textAppearance="@style/TextAppearance"
        android:textColor="@color/splashText"
        android:textSize="13dp"
        android:textStyle="bold" />




</LinearLayout>


<ImageView
    android:id="@+id/login"
    android:layout_width="125dp"
    android:layout_height="35dp"
    android:layout_marginLeft="62dp"
    app:srcCompat="@drawable/loginsignup"/>




  </LinearLayout>

Это мой навигационный вид:

 <?xml version="1.0" encoding="utf-8"?>
 <android.support.v4.widget.DrawerLayout 
 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:id="@+id/drawer_layout"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:fitsSystemWindows="true"
 tools:openDrawer="start">

  <include
    layout="@layout/app_bar_main2"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

  <android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/nav_header_main2"
    app:menu="@menu/activity_main2_drawer" />

    </android.support.v4.widget.DrawerLayout>

Нет сообщения об ошибке

Но ожидаемый результат не пришел

1 Ответ

0 голосов
/ 09 июня 2019

ОК, поэтому вместо включения макета заголовка в nav_view попробуйте следующее:

 <?xml version="1.0" encoding="utf-8"?>
 <android.support.v4.widget.DrawerLayout 
 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:id="@+id/drawer_layout"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:fitsSystemWindows="true"
 tools:openDrawer="start">

  <LinearLayout
android:layout_width="match_parent"
android:layout_height="@dimen/nav_header_height"
android:background="@color/splashBackground"
android:gravity="bottom"
android:id="@+id/header"
android:orientation="vertical"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingBottom="@dimen/activity_vertical_margin"


<LinearLayout
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="75dp"
    android:layout_marginTop="10dp"
    android:layout_marginBottom="15dp"
    android:orientation="vertical">

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="100dp"
        android:layout_height="80dp"
        android:contentDescription="@string/nav_header_desc"
        android:paddingTop="@dimen/nav_header_vertical_spacing"
        app:srcCompat="@drawable/realprolinklogo" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"

        android:text="REAL PROLINK"
        android:textAppearance="@style/TextAppearance"
        android:textColor="@color/splashText"
        android:textSize="13dp"
        android:textStyle="bold" />




</LinearLayout>


<ImageView
    android:id="@+id/login"
    android:layout_width="125dp"
    android:layout_height="35dp"
    android:layout_marginLeft="62dp"
    app:srcCompat="@drawable/loginsignup"/>




  </LinearLayout>

  <android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/nav_header_main2"
    app:menu="@menu/activity_main2_drawer" />

    </android.support.v4.widget.DrawerLayout>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...