ActionbarActivity 向下完美兼容 ActionBar,fragment在Android2.x中
来源:互联网 发布:js获取某个class的值 编辑:程序博客网 时间:2024/05/29 15:07
ActionBar完美兼容Android4.x的机型,虽然现在Android2.x的系统越来越少,还有有一部分人使用的仍是2.x的系统,所以我们还得考虑着兼容性问题。
对比图:
Test例子与微信的对比,测试机型SONY XPERA Mt27i Android2.3.7
在Android官网中我们可以看到有这样一个更新包,android-support-v7,这个包就是专门解决ActionBar的向下兼容性问题。
第一步:在 \extras\android\support 这个目录下面有v7这个包(当然你必须把自己的SDK更新到最新),打开找到appcompat这个项目,作为Android项目导入Eclipse,并勾选Is Libary.
第二步:新建一个Android项目,设置 <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17" />,在AndroidManifest中给声明过的Activity加 android:theme="@style/Theme.AppCompat.Light" 这样一个属性(否则会报错)。
第三步:把Libary加入新建的项目中去,如图
第四步:让主Activity继承ActionBarActivity(import android.support.v7.app.ActionBarActivity),实现ActionBar有点不同,如下:
actionBar = getSupportActionBar();
第五步:ActionBar上添加控件,在menu目录中,添加红色字体为你的项目名称 xmlns:TabsWithSwipeGesture="http://schemas.android.com/apk/res-auto" ,
<menu xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:TabsWithSwipeGesture=
"http://schemas.android.com/apk/res-auto"
>
<item
android:id=
"@+id/action_settings"
android:orderInCategory=
"100"
TabsWithSwipeGesture:showAsAction=
"ifRoom"
TabsWithSwipeGesture:actionViewClass=
"android.support.v7.widget.SearchView"
/>
<item
android:id=
"@+id/action_test1"
android:orderInCategory=
"100"
TabsWithSwipeGesture:showAsAction=
"ifRoom"
android:title=
"测试1"
/>
<item
android:id=
"@+id/action_test2"
android:orderInCategory=
"100"
TabsWithSwipeGesture:showAsAction=
"ifRoom"
android:title=
"测试2"
/>
</menu>
把showAsAction前面的android:替换成当前的项目名称,actionViewClass也引用support-v7中的。
第六步:实现Search
SearchManager searchManager = (SearchManager) getSystemService(Context.SEARCH_SERVICE);
getMenuInflater().inflate(R.menu.main, menu);
MenuItem searchItem = menu.findItem(R.id.action_settings);
SearchView searchview = (SearchView)MenuItemCompat.getActionView(searchItem);
未完·········待续···············
- ActionbarActivity 向下完美兼容 ActionBar,fragment在Android2.x中
- ActionBarActivity ActionBar Fragment
- 基于ActionbarActivity中Actionbar自定义布局
- android: 在fragment中添加actionbar, menu
- Android 弹无虚发之第一弹:Android 2.X平台完美兼容ActionBar以及Actionbar的常用攻略
- Android 弹无虚发之第一弹:Android 2.X平台完美兼容ActionBar以及Actionbar的常用攻略
- android ActionBarActivity 显示ActionBar
- android中ActionBar +Fragment
- 菜单栏ActionBar与Fragment完美使用
- 在ActionBar中进行Fragment之间的切换
- 在ActionBar中进行Fragment之间的切换
- 在ActionBar中进行Fragment之间的切换
- 在ActionBar中进行Fragment之间的切换
- 在低版本Android中fragment会overlay ActionBar区域
- 在ActionBar中进行Fragment之间的切换
- android中在fragment画面添加actionbar(标题栏)
- 在ActionBar中进行Fragment之间的切换
- 在activity、fragment中获得actionbar的高度
- 使用IntelliJ IDEA架设Java程序
- 写在开篇
- C# BitmapData和Marshal.Copy()用法
- Hibernate初学常见错误异常整理(2015.03.11)
- 迷宫寻路问题探索
- ActionbarActivity 向下完美兼容 ActionBar,fragment在Android2.x中
- C++ 练习代码
- performSelector may cause a leak because its selector is unknown
- js 正则表达式
- iOS 开发中为什么更新UI都要放在主线程中?
- linux rz sz 配置
- 用 vim 完成 dos格式文本文件到 linux格式文本文件的转换
- IOS 下的音视频解决方案-FFMPEG
- tcp_syn_retries等参数详解