版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/txfyteen/article/details/40855689
一、官网介绍ActionBar链接
二、ActionBar的介绍
ActionBar最基本的形式之一就是展示标题,且默认情况下标题图标都是在左边的。对所有的Activity而言,ActionBar在告知用户当前所在的位置起到非常重要的作用,它能在你的应用中维持一个统一的标志
三、声明使用ActionBar(一种是高版本的:仅支持3.0以上的版本,一种是低版本的:支持2.1以上的版本)
1、从 Android 3.0(API lever 11)
所有使用 Theme.Holo 主题(或者它的子类)的activity 都包含了 action bar,当 targetSdkVersion 或 minSdkVersion 属性被设置成 “11” 或更大时,它是默认主题。所以,为你的 activity 添加 action bar,只需简单地设置属性为 11 或者更大。例如:
<manifest ... >
<uses-sdk android:minSdkVersion="11" ... />
...
</manifest>
如果你创建了一个自定义主题,需确保这个主题使用一个 Theme.Holo的主题作为父辈。详情请查看 Action bar 的风格化
到此,你的 app 使用了 Theme.Holo 主题,并且所有的 activity 都显示 action bar。
</pre><pre name="code" class="html">2、Andriod 3.0 以下版本(不低于 Android 2.1)
第一步: Support Library Setup文档来建立v7 appcompat library(下载完library包之后)。将Support Library集成到你的 app 工程之中:
第二步:让你的Activity继承ActionBarActivity
private static String message = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_actionbar);
if (savedInstanceState == null) {
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager
.beginTransaction();
Fragment newfragment = new PlaceHolderFragment();
fragmentTransaction.add(R.id.container, newfragment).commit();
}
message = getIntent().getStringExtra(
SwitActionBarActivity.EXTRA_MESSAGE);
}
public static class PlaceHolderFragment extends Fragment {
public PlaceHolderFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
View rootview = null;
rootview = inflater.inflate(R.layout.activity_displayactionbar,
null);
TextView tv = (TextView) rootview.findViewById(R.id.message);
tv.setText(getActivity().getIntent().getStringExtra(
SwitActionBarActivity.EXTRA_MESSAGE));
return rootview;
}
}
}
第三步:在 mainfest 文件中,更新 <application> 标签或者单一的 <activity> 标签来使用一个 Theme.AppCompat 主题。例如:我是在application配置的
运行结果