ActionBarActivity没有显示我的AppIcon

时间:2015-04-19 10:52:51

标签: android android-actionbar android-appcompat android-actionbar-compat

我正在尝试在我的ActionBar中添加我的应用图标,但我正在阅读Google Developers,我可以获得解决方案。我在我的ActivityMain上这样做:

    actionBar = getSupportActionBar();
    actionBar.setHomeButtonEnabled(true);
    actionBar.setDisplayShowCustomEnabled(true);
    actionBar.setIcon(R.drawable.ic_launcher);

但它不起作用。

这是我使用Android的第一天,我只想制作一个带左侧主图标的ActionBar和一个图标搜索。

谢谢。

4 个答案:

答案 0 :(得分:0)

添加:

actionBar.setDisplayHomeAsUpEnabled(true);
actionBar.setLogo(R.drawable.ic_launcher)

答案 1 :(得分:0)

您应该更改徽标,默认情况下与启动器图标相同。

答案 2 :(得分:0)

使用API​​21,您应该使用新的工具栏类。

Toolbar放入您的布局:

<android.support.v7.widget.Toolbar
    android:id=”@+id/my_awesome_toolbar"
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:minHeight="attr/actionBarSize"
    android:background="?attr/colorPrimary" />

然后在您的代码中(例如,您的Activity中的onCreate):

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
toolbar.setNavigationIcon(R.drawable.ic_myNavigationIcon);

您可以在official post找到更多信息。

答案 3 :(得分:0)

您应该执行以下步骤来实施ActionBar

1 - 像这样扩展ActionBarActivity

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

}

请注意导入此内容:

import android.support.v7.app.ActionBarActivity;  

2 - 在onCreate

中添加以下行
 getSupportActionBar().setDisplayShowHomeEnabled(true);
 getSupportActionBar().setDisplayHomeAsUpEnabled(true);
 getSupportActionBar().setIcon(R.drawable.ic_launcher);

3-在xml下创建res/menu/your_menu.xml菜单 像这样的事情:

<强> your_menu.xml

<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">

    <item
        android:id="@+id/action_settings"
        android:orderInCategory="100"
        android:title="@string/action_settings"
        app:showAsAction="ifRoom"/>

</menu>

4-将菜单膨胀到操作栏,并处理操作栏项目点击:

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is   present.
        getMenuInflater().inflate(R.your_menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {

        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

希望这能帮到你!!!