之前我的应用名称正在显示,因此我不得不使用getSupportActionBar().setDisplayShowTitleEnabled(false)
删除文本,但现在在其位置显示一个空白操作,侧面有三个点,显示我已定义的列表项。
我希望“刷新”和“后退”操作直接显示在操作栏中,并带有各自的图标
eventdetails.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:app="schemas.android.com/apk/res-auto"
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/action_refresh"
app:showAsAction="always"
android:title="Refresh"
android:icon="@drawable/ic_action_refresh"
/>
<item
android:id="@+id/action_settings"
android:title="Settings"
app:showAsAction="ifRoom"
>
</item>
<item
android:id="@+id/action_back"
android:title="Back"
android:icon="@drawable/ic_action_back"
app:showAsAction="always"
/>
</menu>
EventDetails.java
public class EventDetails extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_event_details);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbarEventDetails);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayShowTitleEnabled(false);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater menuInflater = getMenuInflater();
menuInflater.inflate(R.menu.eventdetails, menu);
return super.onCreateOptionsMenu(menu);
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch(item.getItemId()){
case R.id.action_back:
Intent action_back = new Intent(EventDetails.this, EventView.class);
startActivity(action_back);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}
答案 0 :(得分:4)
您的 xmlns:app 设置不正确 改变:
xmlns:app="schemas.android.com/apk/res-auto"
到
xmlns:app="http://schemas.android.com/apk/res-auto"