【问题标题】:Android Action Bar安卓操作栏
【发布时间】:2011-08-27 10:40:43
【问题描述】:

我正在寻找 Android 2.1 到 2.3.4 中 ActionBar 的实现,我可以在其中动态设置来自特定活动的操作栏的内容以及点击操作栏中的按钮时的操作。

是否有任何此类开源库,或者有人可以帮助我如何开始构建相同的库。

【问题讨论】:

标签: android android-actionbar


【解决方案1】:

【讨论】:

  • 感谢 Commonsware。喜欢你在 GitHub 上的 repos :)
【解决方案2】:

看看http://android.cyrilmottier.com/?p=240 - Greendroid。

如果它不符合您的需求,我建议您创建自己的“小部件”,只需要一些布局并以编程方式扩展 ActionBar。

【讨论】:

    【解决方案3】:

    这个问题已经有一个可接受的答案。但是我在 SherlockActionBar 实现方面遇到了一些问题,并进行了更多搜索并找到了这个。我们可以按照 Android 官方给出的官方教程使用低于 API 级别 11ActionBar

    从 Android 的官方网站阅读本教程。 您只需要从磁盘上的android-sdk-windows\extras\android\support\v7\appcompat\libs 路径将android-support-v7-appcompat.jar 支持jar 包含在您的项目中。然后你可以在Android中使用API​​ 11以下的ActionBar。

    官方 Android 教程在这里: Action Bar Android Official Sherlock bar 为我制造了问题,然后我得到了这个解决方案。

    【讨论】:

    • 这是一个老问题:D
    • 是的,我知道。但访问者将能够从多个选项中进行选择以在他们的应用中实施。
    • @Hoosier 请不要发布重复的答案。如果问题与重复的问题相同。如果不定制您对问题的答案,而不是发布同一个问题的多个副本。
    • 好的,我会处理的。我只是到处张贴,因为每个人都问了同样的问题。现在我将它们全部标记为重复。
    【解决方案4】:
    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);
    
            }
    
        }
    
    
    
    }
    

    【讨论】:

    • 也尝试添加一些描述
    猜你喜欢
    • 2011-05-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-21
    • 2019-02-04
    • 2022-09-27
    相关资源
    最近更新 更多