【发布时间】:2018-05-18 09:14:49
【问题描述】:
我在stackoverflow 和其他一些专业网站上搜索了很多,但没有找到任何解决方案。
我尝试了不同的方法,但结果大约为 0。有些方法对我有用,但仅在我单击顶部菜单导航栏时才适用。但我不想显示操作/顶部导航栏。
我只想在bottomnavigation 栏中显示这些项目,例如最近新闻、热门故事、访问次数最多。我想通过单击这些项目来启动三个activities,因为我的应用程序是webview 应用程序。
为此,我使用 onOptionItemSelected 我认为这是错误的。所以问题在这里>>
我在底部导航中有三个按钮。
(action_item1) = 点击它应该启动 second_activity
(action_item2) = 点击它应该启动third_activity
(action_item3) = 点击它应该开始第四个活动 请帮助我,我是 android studio 的新手。
导航 XML 在这里!
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/action_item1"
android:icon="@drawable/ic_recent"
android:title="Recent News" />
<item
android:id="@+id/action_item2"
android:icon="@drawable/ic_hot"
android:title="Hot Stories" />
<item
android:id="@+id/action_item3"
android:icon="@drawable/ic_most"
android:title="Most Visited" />
</menu>
Mainactivity.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
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/container"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.pkg.webview.webview">
<android.support.design.widget.BottomNavigationView
android:id="@+id/navigation"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginEnd="0dp"
android:layout_marginStart="0dp"
android:background="?android:attr/windowBackground"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:menu="@menu/navigation" />
</android.support.constraint.ConstraintLayout>
Mainactivity.java
package com.pkg.webview.webview;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.webkit.WebView;
public class MainActivity extends AppCompatActivity{
private ProgressBar pb;
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
getSupportActionBar ().hide ();
setContentView (R.layout.activity_main);}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater ().inflate (R.menu.navigation, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId ()) {
case R.id.action_item1:
startActivity (new Intent (this, secondactivity.class));
break;
}
return super.onOptionsItemSelected (item);
}
}
【问题讨论】:
-
你想达到什么目标?
-
你的问题是什么?
-
@ADM 我的问题是,当我单击底部栏中可用的菜单项 (action_item1) 时,应该启动第二个活动,当我单击菜单项 (action_item2) 时,应该是一个链接在 playstore 中打开以进行评级....等等。我已经在 java 中为一个项目(action_item1)进行了编码,但没有发生任何事情。请帮我。对不起我的英语不好。
-
@meditat 我的问题是,当我单击底部栏中可用的菜单项(action_item1)时,应该启动第二个活动,当我单击菜单项(action_item2)时,应该是一个链接在 playstore 中打开以进行评级....等等。我已经在 java 中为一个项目(action_item1)进行了编码,但没有发生任何事情。请帮我。对不起我的英语不好。
-
令人困惑!!。在代码中,您使用
AlertDialog打开链接而您的问题是关于BottomNavigationView。只需使用bottomNavigation.setOnNavigationItemSelectedListener()在BottomNavigationView上设置监听器。