美文网首页
使用Toolbar碰到的问题

使用Toolbar碰到的问题

作者: Tauruse | 来源:发表于2016-04-09 16:09 被阅读202次

先在BaseActivity中配置toolbar

setSupportActionBar(toolbar);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);

再配置向上箭头的点击事件(正确写法):

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId())
        {
            //点击向上键
            case android.R.id.home:
                onBackPressed();
                break;
        }
        return super.onOptionsItemSelected(item);
    }

错误原因:

之前系统自动生成的代码中使用的是 case R.id.home,但是运行的时候点击没有反应,改为android.R.id.home之后出现效果,不知道是什么原因…

另外一种解决办法:

在Mainfest中当前Activity声明:android:parentActivityName="MainAcitivity(你需要返回的activity的名字)"
列如:

<activity
            android:theme="@style/AppTheme.NoActionBar"
            android:name=".ui.NoteDetailsActivity"
            android:parentActivityName=".ui.MainActivity"></activity>

问题:

想在toolbar中使用系统自带的图标,如何设置?

解决办法:

在Java代码中的使用方法:

MenuItem.setIcon(android.R.drawable.ic_menu_save);

在xml文件中的使用方法:

android:icon="@android:drawable/ic_menu_save"

系统图标大全:

http://blog.csdn.net/jishu360/article/details/8540026


问题:

使用系统自带图标时,图标的背景颜色如何调整?
(图中的分享图标就是使用的系统自带图标)


软件截图.png

解决办法:


问题:

当menu.xml中的searchview代码为

<item
        android:id="@+id/action_search"
        android:icon="@android:drawable/ic_menu_search"
        app:showAsAction="always"
        app:actionViewClass="android.support.v7.widget.SearchView"
        android:title="Search"/>

运行效果为:


软件截图.png

而代码修改为(将app:showAsActio的值修改为"always|collapseActionView"):

<item
        android:id="@+id/action_search"
        android:icon="@android:drawable/ic_menu_search"
        app:showAsAction="always|collapseActionView"
        app:actionViewClass="android.support.v7.widget.SearchView"
        android:title="Search"/>

运行效果为(搜索图标改变):

软件截图.png

相关文章

网友评论

      本文标题:使用Toolbar碰到的问题

      本文链接:https://www.haomeiwen.com/subject/dqhblttx.html