ActionBarUtil:快速添加标题

时间:2015-04-13 10:57:00   收藏:0   阅读:265

ActionBarUtil用来给继承ActionBarActivity的Activity快速添加标题的工具类


工具类:

public class ActionBarUtil {

    private static final String TAG = "ActionBarUtil";

    /**
     * 初始化ActionBar
     *
     * @param ctx   Context
     * @param title ActionBar标题资源ID
     */
    public static void setup(Context ctx, int title) {
        setup(ctx, ctx.getString(title), true);
    }

    /**
     * 初始化ActionBar
     *
     * @param ctx   Context
     * @param title ActionBar标题
     */
    public static void setup(Context ctx, String title) {
        setup(ctx, title, true);
    }

    /**
     * 初始化ActionBar
     *
     * @param ctx           Context
     * @param title         ActionBar标题资源ID
     * @param isHomeEnabled 是否启用返还键
     */
    public static void setup(Context ctx, int title, boolean isHomeEnabled) {
        if (title < -1) {
            Log.e(TAG, "title资源有误");
        } else if (title == 0) {
            setup(ctx, "", isHomeEnabled);
        } else {
            setup(ctx, ctx.getString(title), isHomeEnabled);
        }
    }

    /**
     * 初始化ActionBar
     *
     * @param ctx           Context
     * @param title         ActionBar标题
     * @param isHomeEnabled 是否启用返还键
     */
    public static void setup(Context ctx, String title, boolean isHomeEnabled) {
        if (ctx instanceof ActionBarActivity) {
            ActionBar actionBar = ((ActionBarActivity) ctx).getSupportActionBar();

            if (TextUtils.isEmpty(title)) {
                actionBar.setDisplayShowTitleEnabled(false);
            } else {
                actionBar.setTitle(title);
            }
            actionBar.setDisplayHomeAsUpEnabled(isHomeEnabled);
            actionBar.setHomeButtonEnabled(isHomeEnabled);
        } else {
            Log.e(TAG, "初始化ActionBar出错,title为空或者当前Context不是ActionBarActivity的一个实例");
        }
    }

}


使用:

public class BaBaActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        ActionBarUtil.setup(this, "个人首页");
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {//这个方法可以写在BaseActivity里面
        if (item.getItemId() == android.R.id.home) {
            finish();
        }
        return super.onOptionsItemSelected(item);
    }
}



原文:http://blog.csdn.net/pengkv/article/details/45022103

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!