无法在工具栏上显示图标
Unable to show icon on toolbar
我尝试了所有的解决方案,但仍然无法在工具栏上显示图标,在我的主项目中,我有一个工具栏,在它下面的工具栏和工具栏内部,片段,无论我尝试了什么,我都无法在上面显示图标工具栏,这里是扩展 AppCompatActivity
的 mainActivity.java
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_act_main_screen);
Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);
ActionBar ab = getSupportActionBar();
ab.setTitle("Title");
tabs = (TabLayout) findViewById(R.id.tabs);
tabs.addTab(tabs.newTab().setText("Today"),true);
tabs.addTab(tabs.newTab().setText("Settings"));
tabs.setOnTabSelectedListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
styles.xml
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
</style>
menu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
工具:上下文="address">
<item
android:id="@+id/action_settings"
android:title="@string/action_settings"
app:showAsAction="always"
//android:showAsAction="always" tried this as well
android:icon="@drawable/share"/>
mainactivity.xml
<android.support.v7.widget.Toolbar
android:id="@+id/my_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/toolbarColor"
android:elevation="3dp">
</android.support.v7.widget.Toolbar>
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabGravity="fill"
app:tabMode="fixed"
/>
没有任何效果,不确定如何实现自定义名称space,但我将名称从应用更改为自定义,但没有用,还有足够的 space 但仍然没有显示.
在你的 activity class 上你需要这个 :
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu, menu);
return true;
}
我总是为工具栏的标题和图标这样做:
因为我现在无法访问计算机,所以我无法 post 一个完整的示例,但我会描述 :
首先像这样设置您的 toolbar
身高:layout_height="android:?attr/actionBarSize"
然后在 android.support.v7.widget.Toolbar
标签中放置一个具有以下属性的 LinearLayout
:android:layout_width="match_parent
和 android:layout_height="match_parent"
和 android:gravity="center_vertical|left"
然后将 ImageView
放入具有这些属性的 LinearLayout
中:
width="wrap_content"
height="match_parent"
scaleType="fitXY"
adjustviewbounds="true"
src="@drawable/icon"
如果您想添加标题,只需在添加 ImageView 后添加文本视图即可。
尝试同时使用两者
android:showAsAction="always"
app:showAsAction="always"
忽略你应该使用的警告 app:showAsAction
我尝试了所有的解决方案,但仍然无法在工具栏上显示图标,在我的主项目中,我有一个工具栏,在它下面的工具栏和工具栏内部,片段,无论我尝试了什么,我都无法在上面显示图标工具栏,这里是扩展 AppCompatActivity
的 mainActivity.javaprotected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_act_main_screen);
Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
setSupportActionBar(myToolbar);
ActionBar ab = getSupportActionBar();
ab.setTitle("Title");
tabs = (TabLayout) findViewById(R.id.tabs);
tabs.addTab(tabs.newTab().setText("Today"),true);
tabs.addTab(tabs.newTab().setText("Settings"));
tabs.setOnTabSelectedListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
styles.xml
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
</style>
menu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
工具:上下文="address">
<item
android:id="@+id/action_settings"
android:title="@string/action_settings"
app:showAsAction="always"
//android:showAsAction="always" tried this as well
android:icon="@drawable/share"/>
mainactivity.xml
<android.support.v7.widget.Toolbar
android:id="@+id/my_toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/toolbarColor"
android:elevation="3dp">
</android.support.v7.widget.Toolbar>
<android.support.design.widget.TabLayout
android:id="@+id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:tabGravity="fill"
app:tabMode="fixed"
/>
没有任何效果,不确定如何实现自定义名称space,但我将名称从应用更改为自定义,但没有用,还有足够的 space 但仍然没有显示.
在你的 activity class 上你需要这个 :
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu, menu);
return true;
}
我总是为工具栏的标题和图标这样做:
因为我现在无法访问计算机,所以我无法 post 一个完整的示例,但我会描述 :
首先像这样设置您的 toolbar
身高:layout_height="android:?attr/actionBarSize"
然后在 android.support.v7.widget.Toolbar
标签中放置一个具有以下属性的 LinearLayout
:android:layout_width="match_parent
和 android:layout_height="match_parent"
和 android:gravity="center_vertical|left"
然后将 ImageView
放入具有这些属性的 LinearLayout
中:
width="wrap_content"
height="match_parent"
scaleType="fitXY"
adjustviewbounds="true"
src="@drawable/icon"
如果您想添加标题,只需在添加 ImageView 后添加文本视图即可。
尝试同时使用两者
android:showAsAction="always"
app:showAsAction="always"
忽略你应该使用的警告 app:showAsAction