我已将可绘制文件夹中的图像添加到我的操作栏中,现在想将其移到左后箭头旁边。有关如何在Android Studio中执行此操作的任何想法。感谢
我的代码就像休耕一样
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
getSupportActionBar().setDisplayUseLogoEnabled(true);
getSupportActionBar().setLogo(R.drawable.mainlogo);
答案 0 :(得分:1)
尝试使用工具栏,这是制作AppBars的新方法。它更容易定制和重复使用,以及其他优点。
Android's docs让它看起来比实际更难。他们使用工具栏但仍将其连接到AppBar API。如果你使用很多ActionBar实用程序方法,比如ActionBar.hide(),那么调用它是有意义的
setSupportActionBar(myToolbar);
但它实际上可以更容易。 Why you don't need to setSupportActionBar
根据上面的文章,如果我们不使用AppBar API,我们不需要自定义主题,onCreateOptionsMenu()或任何AppBar混乱。
以下是如何操作工具栏:
我认为仍然需要让你的Activity扩展AppCompatActivity
添加以下代码:
在布局资源文件的顶部,当然是顶级布局:
<android.support.v7.widget.Toolbar
android:id="@+id/my_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
</android.support.v7.widget.Toolbar>
在您的活动中:
protected void onCreate(Bundle savedInstanceState) {
...
//Get the toolbar
Toolbar toolbar = ((Toolbar)findViewById(R.id.my_toolbar));
//Set up the toolbar's navigation icon and behavior
toolbar.setNavigationIcon(R.drawable.ic_close_white_24dp);
toolbar.setNavigationOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//whatever you want to happen on click
}
});
}
您可以选择执行以下操作:
toolbar.inflateMenu(R.menu.save_menu);
toolbar.setTitle("Hey");
你想要自定义行为的地方。如果你想在工具栏中使用ImageView,你只需将它添加到布局资源中:
<android.support.v7.widget.Toolbar
android:id="@+id/my_toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:elevation="4dp"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/my_logo"/>
</android.support.v7.widget.Toolbar>
事实上,如果你想要一个带有自定义样式的标题,而不是试图找出工具栏样式而不是撞墙,只需在ImageView所在的地方添加一个TextView。您可以根据需要修改它,并将其作为标题!