工具栏ImageView没有clickabele

时间:2017-09-04 10:04:34

标签: android imageview fragment onclicklistener toolbar

enter image description here

这是包含fragmelayout的片段的图像,我将在Blog,提示和论坛的按钮点击上添加片段。我在顶部包含了一个工具栏xml,其中包含两个图像视图。问题是我获得按钮点击但不包括工具栏imageview点击。任何解决方案?

工具栏:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:minHeight="?attr/actionBarSize"
    tools:ignore="MissingPrefix"
    >

  <RelativeLayout
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      android:background="@color/header_gray"
      android:focusable="true"
      >

    <ImageView
        android:id="@+id/imgHomeToolbarBack"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_centerVertical="true"
        android:contentDescription="@string/app_name"
        android:padding="10dp"
        android:src="@drawable/left_arrow"
        android:focusable="true"
        />

    <TextView
        android:id="@+id/txtHomeToolbarBack"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:layout_toEndOf="@id/imgHomeToolbarBack"
        android:contentDescription="@string/app_name"
        android:text="@string/edit"
        android:textColor="@android:color/black"
        android:textSize="@dimen/font_medium_semi"
        fontPath="@string/font_regular"
        />

    <TextView
        android:id="@+id/txtHomeToolbarLabel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="@string/app_name"
        android:textColor="@android:color/black"
        android:textSize="@dimen/text_size_20"
        />

    <ImageView
        android:id="@+id/imgHomeToolbarCalendar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentEnd="true"
        android:layout_centerVertical="true"
        android:layout_marginEnd="@dimen/dimen_margin_5"
        android:contentDescription="@string/app_name"
        android:padding="10dp"
        android:src="@drawable/calender"
        android:text="@string/next"
        android:focusable="true"
        android:textColor="@color/darkGrey"
        android:textStyle="normal"
        />
  </RelativeLayout>
</LinearLayout>

这是常见的工具栏代码。

布局:

<?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"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:ignore="MissingPrefix"
    >
  <include
      layout="@layout/toolbar_home"
      android:id="@+id/toolbar"
      />
  <LinearLayout
      android:id="@+id/llCommunitySections"
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:background="@android:color/white"
      >
    <Button
        android:id="@+id/btnBlog"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:background="@null"
        android:text="@string/nabta_blog"
        style="?android:attr/buttonBarButtonStyle"
        fontPath="@string/font_regular"
        android:textColor="@color/textDarkBlue"
        />
    <Button
        android:id="@+id/btnHints"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:background="@null"
        android:text="@string/hints_tips"
        style="?android:attr/buttonBarButtonStyle"
        fontPath="@string/font_regular"
        android:textColor="@color/blogGreyText"
        />
    <Button
        android:id="@+id/btnForums"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:background="@null"
        android:text="@string/forums"
        style="?android:attr/buttonBarButtonStyle"
        fontPath="@string/font_regular"
        android:textColor="@color/blogGreyText"
        />
  </LinearLayout>
  <FrameLayout
      android:id="@+id/flCategories"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      />
</LinearLayout>

在onActivityCreated中设置onClickListener后,我点击了搜索图标,但没有点击后面的图标。我在一些片段中切换了后面图标的可见性。这是一个片段,其他片段加载在flCategories中。

OnClickListener的代码:

imgHomeToolbarBack.setOnClickListener(new View.OnClickListener()
{
  @Override public void onClick(View v)
  {
    getChildFragmentManager().popBackStack();
  }
});
imgHomeToolbarCalendar.setOnClickListener(new View.OnClickListener()
{
  @Override public void onClick(View v)
  {
    Toast.makeText(getActivity(), "Search Clicked", Toast.LENGTH_SHORT).show();
  }
});

吐司正在发生,但不是其他人。

1 个答案:

答案 0 :(得分:0)

我得到了答案。实际上我并没有将新片段添加到backstack,因此backstack是空的,所以它不会回来。