如何在溢出图标中使用设置
How to use Setting's in overflow Icon
我尽了最大努力,但找不到 it.I 我在导航抽屉活动中工作,当我点击它时,我可以在右上角看到一个溢出图标,当我点击它时,会弹出一个设置按钮之类的东西单击它(设置)没有任何反应
我不知道如何为此分配 XML,以便在单击它时应该打开一个新活动
我知道创建一个 xml 并为该按钮分配一个 onClickListner 但我无法继续进行,因为当该按钮时我不知道在哪里调用设置活动(溢出图标中的设置按钮) 被按下
您可以在 activity 中使用以下方法找到这些方法,在那里您可以扩充菜单并做您想要的
菜单xml文件
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
>
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
<item android:id="@+id/action_search"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
<item android:id="@+id/action_logout"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
</menu>
并且您必须在 activity
中编写如下代码
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_settings:
Toast.makeText(this, "Settings", Toast.LENGTH_SHORT).show();
return true;
case R.id.item2:
Toast.makeText(this, "Search", Toast.LENGTH_SHORT).show();
return true;
case R.id.action_search:
Toast.makeText(this, "Logout", Toast.LENGTH_SHORT).show();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
试试这个 -
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == R.id.action_settings) {
Intent intent = new Intent(this, YourSettingfActivity.class);
startActivity(intent);
}
return super.onOptionsItemSelected(item);
}
menu_main.xml -
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
</menu>
我尽了最大努力,但找不到 it.I 我在导航抽屉活动中工作,当我点击它时,我可以在右上角看到一个溢出图标,当我点击它时,会弹出一个设置按钮之类的东西单击它(设置)没有任何反应
我不知道如何为此分配 XML,以便在单击它时应该打开一个新活动
我知道创建一个 xml 并为该按钮分配一个 onClickListner 但我无法继续进行,因为当该按钮时我不知道在哪里调用设置活动(溢出图标中的设置按钮) 被按下
您可以在 activity 中使用以下方法找到这些方法,在那里您可以扩充菜单并做您想要的
菜单xml文件
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
>
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
<item android:id="@+id/action_search"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
<item android:id="@+id/action_logout"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
</menu>
并且您必须在 activity
中编写如下代码@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.action_settings:
Toast.makeText(this, "Settings", Toast.LENGTH_SHORT).show();
return true;
case R.id.item2:
Toast.makeText(this, "Search", Toast.LENGTH_SHORT).show();
return true;
case R.id.action_search:
Toast.makeText(this, "Logout", Toast.LENGTH_SHORT).show();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
试试这个 -
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
if (item.getItemId() == R.id.action_settings) {
Intent intent = new Intent(this, YourSettingfActivity.class);
startActivity(intent);
}
return super.onOptionsItemSelected(item);
}
menu_main.xml -
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:context=".MainActivity">
<item android:id="@+id/action_settings"
android:title="@string/action_settings"
android:orderInCategory="100"
android:showAsAction="never"/>
</menu>