Java 通过单击菜单更改字符串
我的android studio项目中有Constant.java。我有我的应用程序的菜单。我希望通过单击菜单项来更改字符串。我该怎么做 这是我的constant.java文件Java 通过单击菜单更改字符串,java,android,android-menu,Java,Android,Android Menu,我的android studio项目中有Constant.java。我有我的应用程序的菜单。我希望通过单击菜单项来更改字符串。我该怎么做 这是我的constant.java文件 public class Constant implements Serializable{ /** * */ private static final long serialVersionUID = 1L; //server url public static
public class Constant implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
//server url
public static final String SERVER_URL= BuildConfig.server_url;
public static final String IMAGE_PATH_URL =SERVER_URL+"images/";
public static final String CATEGORY_URL = SERVER_URL+"api.php?cat_list";
}
这是我的drawer_menu.xml文件
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/menu_go_home"
android:checked="true"
android:icon="@drawable/ic_d_home"
android:title="@string/menu_home" />
<item
android:id="@+id/menu_go_category"
android:checked="false"
android:icon="@drawable/ic_d_category"
android:title="@string/menu_category" />
<item
android:id="@+id/menu_go_diziler"
android:checked="false"
android:icon="@drawable/ic_d_category"
android:title="Diziler" />
<item
android:id="@+id/menu_go_latest"
android:checked="false"
android:icon="@drawable/ic_d_latest"
android:title="@string/menu_latest" />
<item
android:id="@+id/menu_go_all"
android:checked="false"
android:icon="@drawable/ic_d_video"
android:title="@string/menu_all" />
<item
android:id="@+id/menu_go_favourite"
android:checked="false"
android:icon="@drawable/ic_d_favorite"
android:title="@string/menu_favorite" />
<item
android:id="@+id/menu_go_rate"
android:checkable="false"
android:icon="@drawable/ic_d_rate"
android:title="@string/menu_rate" />
<item
android:id="@+id/menu_go_share"
android:checkable="false"
android:icon="@drawable/ic_d_share"
android:title="@string/menu_share" />
<item
android:id="@+id/menu_go_more"
android:checkable="false"
android:icon="@drawable/ic_d_more"
android:title="@string/menu_more" />
<item
android:id="@+id/menu_go_about"
android:checked="false"
android:icon="@drawable/ic_d_about"
android:title="@string/menu_about" />
<item
android:id="@+id/menu_go_privacy"
android:checked="false"
android:icon="@drawable/ic_d_privacy"
android:title="@string/menu_privacy" />
</group>
</menu>
现在,例如,当我用android:id=“@+id/menu\u go\u category”
id单击菜单项时,我想用
public static final String CATEGORY\u URL=SERVER\u URL+“api.php?cat\u list”代码>到
public static final String CATEGORY\u URL=SERVER\u URL+“api.php?菜单\u go\u CATEGORY(或任何其他内容)
我该怎么做
注意:我的Constant.java文件和drawer_menu.xml文件位于不同的包中试试这个
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.drawer_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
switch (item.getItemId()) {
case R.id.menu_go_home:
String itemTitle = item.getTitle();
Constant.CATEGORY_URL = SERVER_URL+"api.php? + itemTitle;
return true;
default:
return super.onOptionsItemSelected(item);
}
}
您不能使用final
关键字更改变量的值我知道。删除final关键字没有问题。当我删除此关键字时,我该怎么做?但我的常量文件不活动,因此我无法使用@override@AhmetÖzcan这将进入有抽屉的MainActivity.java
,而不是Constant.java
。