为什么操作栏上没有显示操作图标

问题描述 投票:0回答:2

我开发了android应用程序,我想创建一个放在动作栏上的动作,它可以看作图标。我添加了一个分辨率为18x18px的drawable并创建了一个带有一个项目的菜单,这是我的动作,如下所示:

<menu 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"
tools:context=".RelationsActivity">

<item
    android:id="@+id/action_show_profile"
    android:icon="@drawable/profile_icon_16"
    android:title="@string/action_show_profile"
    app:showAsAction="always" />

正如您所看到的,showAsAction属性设置为“always”,但仍然无效。我试过不同的App主题并没有任何帮助。肯定有足够的空间可以禁用图标cuz操作栏标题:

getActionBar().setDisplayShowTitleEnabled(false);

该操作存在于溢出下拉列表中,就好像该图标没有空间一样。

android android-actionbar icons overflow action
2个回答
0
投票

用这个

Objects.requireNonNull(getSupportActionBar()).setDisplayHomeAsUpEnabled(true);

而这种方法也是如此

 @Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.YOUR_MENU_FILE, menu);
    return true;
}

-1
投票
implements AppCompatCallback

and use this code inside oncreate method

  //let's create the delegate, passing the activity at both arguments (Activity, AppCompatCallback)
        AppCompatDelegate  delegate = AppCompatDelegate.create(this, this);

        //we need to call the onCreate() of the AppCompatDelegate
        delegate.onCreate(savedInstanceState);

        //we use the delegate to inflate the layout
        //delegate.setContentView(R.layout.activity_sync_contact);


        toolbar = (Toolbar) findViewById(R.id.toolbar);
        toolbar.setNavigationIcon(R.drawable.ic_menu);// icon of navigation 
        toolbar.setTitle("Inbox");
        delegate.setSupportActionBar(toolbar);
© www.soinside.com 2019 - 2024. All rights reserved.