zoukankan      html  css  js  c++  java
  • Android 开源框架ActionBarSherlock初探

    1:我的开发环境是Ubuntu12.04下:adt-bundle-linux-x86-20130729。

    ActionBarSherlock下载地址:http://actionbarsherlock.com/  我下载的是zip版:JakeWharton-ActionBarSherlock-5a15d92,解压之后:

    2:actionbarsherlock没有提供类似jar包的方式,所以我们要先新建一个sherlock工程,例如:

    点击Next:这里要选中第三项  Mark this project as a library

    然后一路Next最后Finish。

    3:进入actionbarsherlock文件夹:

    把libs,res,src,AndroidManifest.xml四个文件覆盖到我们刚才新建的sherlock工程里,我们的sherlock工程目录如下:

    此时回到我们的工程界面,刷新一下工程,看一下有没有错误:如没有报错就OK了。

    4:此时我们新建一个工程来测试一下sherlock是否可以用,此时建立的工程和我们平时一样。

    例如:sherlocktest:然后右键->Properties->Android->右边勾选 is Library->Add->选中sherlock->OK

    最后  Apply之后在控制台会提示错误:说是android-support-v4.jar的问题,我就把sherlocktest工程中的libs/android-suppoer-v4.jar覆盖到了sherlock中的libs/android-suppoert-v4.jar,之后又重新加载了一边这次没有报错。

    (1)修改AndroidManifest.xml如下:对activity中加入theme模板:

    android:theme="@style/Theme.Sherlock.Light"
    <activity
                android:name="com.example.sherlocktest.MainActivity"
                android:label="@string/app_name" 
                android:theme="@style/Theme.Sherlock.Light">
                <intent-filter>
                    <action android:name="android.intent.action.MAIN" />
    
                    <category android:name="android.intent.category.LAUNCHER" />
                </intent-filter>
            </activity>

    (2)修改menu/main.xml文件如下:

     <item
            android:id="@+id/add"
            android:icon="@android:drawable/ic_menu_add"
            android:showAsAction="ifRoom"
            android:title="add"
            android:titleCondensed="add">
        </item>
        <item
            android:id="@+id/delete"
            android:icon="@android:drawable/ic_menu_delete"
            android:showAsAction="ifRoom"
            android:title="delete">
        </item>

    (3)修改MainActivity 要继承SherlockActivity,也要导入sherlock的Menu

    public class MainActivity extends SherlockActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    
        @Override
        public boolean onCreateOptionsMenu(Menu menu) {
            getSupportMenuInflater().inflate(R.menu.main, menu);
            return true;
        }
    
    }

    运行项目效果如下:

    说明:在覆盖文件的时候不要覆盖libs就不会报之前的错误了。 

  • 相关阅读:
    调整浏览器兼容性的利器条件判断注释器
    Automatic uninstall IE9 and roll back to IE8
    How to use cmd with C#
    [转]在设计和执行测试用例的时候的几点心得和经验
    Move all files in subfolders to another folder using c#
    数据驱动单元测试实例
    测试web开源项目时如何收集代码覆盖率
    2013春节期间玩CentOS 6.3记录
    当使用ckeditor控件时,需要校验输入内容是否为空的一种解决办法(转帖)
    Enterprise Architect 8.0 注册码
  • 原文地址:https://www.cnblogs.com/yshyee/p/3375363.html
Copyright © 2011-2022 走看看