如何在Android工具栏中控制菜单位置

如何在Android工具栏中控制菜单位置

本文介绍了如何在Android工具栏中控制菜单位置的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在android xml代码中更改膨胀的菜单项的重力,但我找不到任何属性来解决问题。 我希望侧的项目和中的另一项位于<$ c $的角落C>工具栏 即可。

I want to change the gravity of my inflated menu item in android xml code but i could not find any attribute to solve the problem. i want an item in the left side and another item in right side of corner in Toolbar.

你有什么想法吗?

这是我现在的状态:

这是我的菜单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">
    <item
        android:id="@+id/dismis"
        android:icon="@drawable/close"
        android:title="Done"
        app:showAsAction="always"></item>

    <item
        android:id="@+id/saveNote"
        android:icon="@drawable/save"
        android:title="Done"
        app:showAsAction="always"></item>


</menu>


推荐答案

使用工具栏导航 item LEFT dismiss saveNote 项目的项目和选项 menu RIGHT )。

Use Toolbar navigation item(LEFT) for dismiss item and option menu(RIGHT) for saveNote item.

解雇:

SaveNote:

按照以下步骤:

1. 从<$ c删除解除项$ c> menu XML。

1. Remove dismiss item from menu XML.

// menu_main.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">

    <item
        android:id="@+id/saveNote"
        android:icon="@drawable/save"
        android:title="Done"
        app:showAsAction="always">
    </item>
</menu>

2。在您的活动中,为<$ c $执行以下更改c>解雇和 saveNote 操作。

2. In your activity, do below changes for dismiss and saveNote actions.

public class MainActivity extends AppCompatActivity {


    // ToolBar
    Toolbar mToolBar;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        ...........
        .....................

        // ToolBar
        mToolBar = (Toolbar) findViewById(R.id.toolbar);

        // Required to use Toolbar as ActionBar
        setSupportActionBar(mToolBar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setTitle("StackOverflow");

        // Dismiss Action
        mToolBar.setNavigationIcon(R.drawable.close);
        mToolBar.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                // Do something
                Toast.makeText(getApplicationContext(), "Dismiss", Toast.LENGTH_SHORT).show();
            }
        });

        // SaveNote Action
        mToolBar.inflateMenu(R.menu.menu_main);
        mToolBar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
            @Override
            public boolean onMenuItemClick(MenuItem item) {

                if (item.getItemId() == R.id.saveNote)
                {
                    // Do something
                    Toast.makeText(getApplicationContext(), "Save", Toast.LENGTH_SHORT).show();
                }
                return true;
            }
        });


        .............
        .......................
    }
}

输出

希望这会有所帮助〜

这篇关于如何在Android工具栏中控制菜单位置的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-14 03:29