单击菜单项时启动新活动的问题

时间:2019-05-05 21:09:01

标签: java android xml menuitem

在我的项目中,我有两个项目的底部导航:主页和收藏夹。下面的代码仅用于收藏夹。我的问题是,当我单击菜单项时,无法从“ ActivityHome”启动新活动“ FavoritesActivity”。有人知道这可能是问题所在吗?

我试图放烤面包,但也没有用。

这是我的bottom_nav_menu.xml

    <?xml version="1.0" encoding="utf-8"?>
    <menu 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"
        tools:context=".ActivityHome">


        <item
            android:id="@+id/action_favorite"
            android:enabled="true"
            android:icon="@drawable/ic_favorite"
            android:title="favorite"
            app:showAsAction="ifRoom" />

        <item
            android:id="@+id/action_home"
            android:enabled="true"
            android:icon="@drawable/ic_home"
            android:title="Home"
            app:showAsAction="ifRoom" />


    </menu>


This is activity_home.xml 


        <android.support.design.widget.BottomNavigationView
            android:id="@+id/bottom_navigation"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0"
            android:layout_gravity="bottom"
            app:itemBackground="@color/colorPrimary"
            app:itemIconTint="@color/colorPrimaryDark"
            app:itemTextColor="@color/colorPrimaryDark"
            app:menu="@menu/bottom_nav_menu" >

            <View
                android:layout_width="match_parent"
                android:layout_height="4dp"
                android:layout_above="@id/bottom_navigation"
                android:background="@drawable/shadow"/>



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

这是ActivityHome.java

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.bottom_nav_menu, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected (MenuItem item) {
        int id = item.getItemId();

        if (id == R.id.action_favorite) {
            Intent intent = new Intent(this, FavoritesActivity.class);
            this.startActivity(intent);
            return true;


        }


        return super.onOptionsItemSelected(item);
    }

}

这是AndroidManifest.xml

                <activity android:name=".Intro">
<intent-filter>
    <action android:name="android.intent.action.MAIN" />

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

    </manifest>

注意:还将创建收藏夹Activity.java。

0 个答案:

没有答案