Android Action Bar

前端 未结 4 1662
一个人的身影
一个人的身影 2020-12-31 12:14

I am looking for an implementation of the ActionBar in Android 2.1 to 2.3.4 where i can dynamically set the contents of the action bar from the particular activity and also

相关标签:
4条回答
  • 2020-12-31 12:35

    There is ActionBarSherlock and android-actionbar.

    0 讨论(0)
  • 2020-12-31 12:38

    Have a look at http://android.cyrilmottier.com/?p=240 - Greendroid.

    If it doesn't fit your needs, I suggest creating your own "widget", just need some layouts and inflate the ActionBar programmatically.

    0 讨论(0)
  • 2020-12-31 12:40
    package com.util;
    
    import android.app.AlertDialog;
    import android.app.ProgressDialog;
    import android.content.Context;
    import android.content.DialogInterface;
    import android.content.Intent;
    import android.graphics.Typeface;
    import android.os.Bundle;
    import android.support.v7.app.ActionBar;
    import android.support.v7.app.ActionBar.LayoutParams;
    import android.support.v7.app.ActionBarActivity;
    import android.support.v7.widget.Toolbar;
    import android.view.LayoutInflater;
    import android.view.MotionEvent;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.inputmethod.InputMethodManager;
    import android.widget.EditText;
    import android.widget.ImageView;
    import android.widget.ProgressBar;
    import android.widget.TextView;
    
    import com.android.volley.RequestQueue;
    
    
    public class BaseActivity extends ActionBarActivity {
        public View mCustomView;
        public static SessionManager session;
        public ProgressDialog pDialog;
        public ConnectionDetector checkConnection;
        RequestQueue queue;
        AlertDialog alertDialog;
        private boolean isActionBarEnable;
        public Typeface font_bold, font_regular, font_light, font_thin;
        public ImageView ivBack,ivHome,iv_history;
        public TextView tvTitle;
        public ProgressBar progressForWebView;
    
        public BaseActivity() {
    
        }
    
        public BaseActivity(boolean isActionBarEnable) {
            this.isActionBarEnable = isActionBarEnable;
        }
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            // TODO Auto-generated method stub
            super.onCreate(savedInstanceState);
    
    
            if (isActionBarEnable) {
    
                ActionBar actionBar = getSupportActionBar();
                actionBar.setDisplayHomeAsUpEnabled(false);
                actionBar.setDisplayShowHomeEnabled(false);
                actionBar.setDisplayUseLogoEnabled(false);
                actionBar.setDisplayShowTitleEnabled(false);
    
                LayoutInflater mInflater = LayoutInflater.from(this);
    
                mCustomView = mInflater.inflate(R.layout.custom_actionbar, null);
    
                ivBack = (ImageView) mCustomView.findViewById(R.id.custom_actionbar_iv_back);
                iv_history = (ImageView) mCustomView.findViewById(R.id.custom_actionbar_iv_history);
                ivHome = (ImageView) mCustomView.findViewById(R.id.custom_actionbar_iv_home);
    
                tvTitle = (TextView) mCustomView.findViewById(R.id.custom_actionbar_title);
    
                progressForWebView = (ProgressBar) mCustomView.findViewById(R.id.custom_actionbar_progressbar);
    
    
                actionBar.setDisplayOptions(0, ActionBar.DISPLAY_SHOW_CUSTOM);
                actionBar.setDisplayShowCustomEnabled(true);
    
                actionBar.setCustomView(mCustomView, new ActionBar.LayoutParams(
                        LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
                Toolbar parent = (Toolbar) mCustomView.getParent();
                parent.setContentInsetsAbsolute(0, 0);
    
            }
    
        }
    
    
    
    }
    
    0 讨论(0)
  • 2020-12-31 12:42

    This question already has an accepted answer. But I was having some problems with SherlockActionBar implementation and searched more and found this. We can use ActionBar below API level 11 following this official tutorial given at official Android.

    Read this tutorial from Android's official site. Action Bar Android You just need to include android-support-v7-appcompat.jar support jar in your project from your android-sdk-windows\extras\android\support\v7\appcompat\libs path on your disk. Then you can use ActionBar below API 11 in Android.

    Official Android Tutorial is here: Action Bar Android Official Sherlock bar was creating issues for me then I got this solution.

    0 讨论(0)
提交回复
热议问题