I have updated the Android SDK and when I create new project It automatically adds the appCompact Support Library version 7
and extends my Activity with ActionBarActivity
.
What happened to ActionBar? Is it gone? How to get back my ActionBar?
I have updated the Android SDK and when I create new project It automatically adds the appCompact Support Library version 7
and extends my Activity with ActionBarActivity
.
What happened to ActionBar? Is it gone? How to get back my ActionBar?
有一个新的小部件,称为Toolbar Widget
它是ActionBar
工具栏完全支持框架小部件,AppCompat
并具有与框架小部件相同的功能和 API。在AppCompat
, Toolbarandroid.support.v7.widget.Toolbar
类中实现。工具栏有两种使用方式:
当您想要使用现有的操作栏工具(例如菜单膨胀和选择、ActionBarDrawerToggle 等)但想要对其外观进行更多控制时,请使用工具栏作为操作栏。当您想在应用程序中使用该模式来处理操作栏不支持的情况时,请使用独立的工具栏;例如,在屏幕上显示多个工具栏,仅跨越部分宽度,等等。
动作栏
<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” />
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.blah);
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
setSupportActionBar(toolbar);
}
独立
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.blah);
Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar);
// Set an OnMenuItemClickListener to handle menu item clicks
toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem item) {
// Handle the menu item
return true;
}
});
// Inflate a menu to be displayed in the toolbar
toolbar.inflateMenu(R.menu.your_toolbar_menu);
}
有关详细信息,请访问http://android-developers.blogspot.com.au/2014/10/appcompat-v21-material-design-for-pre.html
为了提供对以前版本的兼容性,ADT tools 23 会自动添加它。您可以删除它们并设置较低的构建工具版本。
任何一个:
按照说明使用appcompat-v7
,或
从您的项目中删除appcompat-v7
,切换到基于标准 Android 的主题(例如,Theme.Holo
),并将您的活动更改为继承自Activity
而不是ActionBarActivity