Articles of android actionbar

放置/重叠(z-index)操作栏选项卡上方的视图

我有一个View,它包含了包含它的Fragment之外的东西,我将它配置为使用它来绘制外部的内容 。 问题是它可以在任何地方工作,但在ActionBar和ActionBar选项卡上。 mActionBar.addTab( mActionBar.newTab() .setCustomView(t)); 我正在使用appCompat并以这种方式添加标签: 我向所有父视图添加了android:clipChildren=”false” ,但它不仅适用于ActionBar和ActionBar选项卡。 理想的观点: 但结果如下:

使用ActionBar选项卡在onCreateView中获取Google Map Fragment

我正在尝试在ActionBar中使用Tabs时检索Google Map片段。 当我加载选项卡页面时,地图加载正常,但我想获取地图对象,以便我可以居中,添加标记等。 有没有办法做到这一点,如果有的话,有人会如此善良地告诉我如何? 这是我的标签页的代码…… 我正在使用的具体方法是public static class Map extends Fragment public class Page3Activity extends FragmentActivity implements ActionBar.TabListener { final Context context = this; static GoogleMap map; static MapView mMapView; DatabaseHandler db = new DatabaseHandler(context); AppSectionsPagerAdapter mAppSectionsPagerAdapter; ViewPager mViewPager; @SuppressLint(“NewApi”) public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.page3); // Create the adapter that will return a […]

Android ActionBar:动态显示/隐藏标签?

是否可以动态地从操作栏中删除/恢复标签栏? 到目前为止,我通过更改操作栏的导航模式来完成此操作。 我使用以下代码删除和恢复标签栏: @Override public void restoreTabs() { getSupportActionBar() .setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); this.supportInvalidateOptionsMenu(); } @Override public void removeTabs() { getSupportActionBar() .setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD); this.supportInvalidateOptionsMenu(); } 这是有效的,但是有一个很大的问题:每次调用setNavigationMode , onTabSelected在TabListener调用setNavigationMode ,并重新创建当前的TabListener选项卡。

在Android中hover时设置菜单项背景颜色

我的应用程序中有菜单项,我想更改项目背景的颜色,当它被点击时(请参见屏幕截图 – 单击项目1) 我只想要一种颜色 – 浅蓝色或深色。 但是,正如您所看到的,第一个项目中有两个。 这是我的代码: 活动中的工具栏: … 样式: match_parent wrap_content true @color/material_dark_blue showHome|homeAsUp|showTitle @android:color/transparent @android:integer/config_shortAnimTime false @color/material_white @style/CustomOverflowBack @android:color/white 表现: 任何帮助都非常感谢。 更新:添加CustomOverflowBack : @drawable/menu_item Menu_item.xml

隐藏操作栏的标题不适用于旧版Android(使用ActionBarSherlock)

我试图使用ActionBarSherlock隐藏我的操作栏的标题部分,如第二张图片中所示: 设置: actionBar.setDisplayShowHomeEnabled(false); actionBar.setDisplayShowTitleEnabled(false); 适用于版本> 3.0但不适用于旧版本。 标签栏上方留有黑色空间。 是否有解决该问题的解决方法?

两个动作条(Bottom和Up)同时?

我需要制作两个动作栏,顺便说一句,我正在使用actionBarSherlock。 所以我需要的是在正常操作栏上打开“欢迎屏幕”,并添加两个正常的ActionBar Action选项。 类似于我需要的Gmail和地图,如: http : //cdn.androidcommunity.com/wp-content/uploads/2012/03/Screenshot_2012-03-28-12-58-16.png (他们没有允许我发布信誉低的图片,请看链接 这个地图应用程序有一个上下操作栏,正是我需要的,因为一旦我到达可以添加第二个操作栏的位置,我知道从哪里开始…… 我已经搜索了大约一个星期关于这个主题,我发现了一些类似的问题,但是我已经理解了没有答案; 答案是关于一个我不熟悉的自定义视图,我无法理解一件事,但是是的,我尝试从我认为正确的任何事情做出“自定义视图”,我得到了一些我没有做过的事情。找不到任何解决方案…如果你可以把我作为一个例子来说这个地图应用程序如何使用这两个动作栏? (我不想像地图和gmail那样导航,但只有两个动作栏) 这是我的一些代码: //Part of my MainActivity.class public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) { MenuInflater inf = getSupportMenuInflater(); inf.inflate(R.menu.upper_navbar, menu); final String name = “welcome”; final SharedPreferences pref = getSharedPreferences(name, 0); final Editor edit = pref.edit(); boolean oldState = pref.getBoolean(“w”, true); ToggleButton tog = (ToggleButton) menu.findItem(R.id.welcome_screen).getActionView(); if(oldState){ […]

从Fragment(ActionBarCompat)内部调用getSupportActionBar()时出现NullPointerException

我刚从ActionBarSherlock切换到ActionBarCompat,一切都运行良好,直到遇到这个小错误。 我有一个扩展ActionBarActivity的基本活动,并有3个与之关联的片段。 在其中一个片段onAttach方法中,我尝试执行此代码: @Override public void onAttach(Activity activity) { super.onAttach(activity); final ActionBar actionBar = ((ActionBarActivity)activity).getSupportActionBar(); actionBar.setHomeButtonEnabled(true); actionBar.setDisplayHomeAsUpEnabled(true); actionBar.setDisplayShowTitleEnabled(false); actionBar.setTitle(“”); } 它工作正常,直到我尝试更改我的屏幕方向。 然后我得到这行代码的NullPointerException : actionBar.setHomeButtonEnabled(true); 。 我怎样才能解决这个问题? 编辑: 这是整个错误日志: 06-10 18:53:31.440: E/AndroidRuntime(18586): FATAL EXCEPTION: main 06-10 18:53:31.440: E/AndroidRuntime(18586): Process: com.packagename.appname, PID: 18586 06-10 18:53:31.440: E/AndroidRuntime(18586): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.packagename.appname/com.packagename.appname.activities.NewActivity}: java.lang.NullPointerException 06-10 18:53:31.440: E/AndroidRuntime(18586): at […]

确定操作栏是否已拆分

我有一个MapView ,其动作栏由ActionBarSherlock提供支持。 操作栏分开(在“窄”屏幕上)和重叠/半透明(android:windowActionBarOverlay为真)。 或多或少像谷歌地图应用程序。 现在我想在地图顶部推出视图,在屏幕底部仍保持在底部操作栏上方。 我的问题在于我不知道底部操作栏的高度。 坦率地说,我甚至无法find一种方法来知道它是否被绘制。 getHeight()似乎返回顶部操作栏的高度(或者它可能是两者的高度,但我仍然不知道底部操作栏是否存在。 请告诉我这些信息就在我面前!

如何在右侧放置操作栏列表导航?

这张图片展示了我需要做的事情。 我需要下拉菜单始终保持在溢出菜单图标旁边的左侧 我怎样才能做到这一点? 我的styles.xml @drawable/ad_selectable_background @drawable/ad_selectable_background @style/MyPopupMenu @style/MyPopupMenu @style/MyDropDownListView @style/MyDropDownListView @style/MyActionBarTabStyle @style/MyActionBarTabStyle @style/MyDropDownNav @style/MyDropDownNav @drawable/ad_btn_check_holo_light @drawable/ad_btn_radio_holo_light <!– @style/MyOverflowButton –> @drawable/ad_menu_dropdown_panel_holo_light @drawable/ad_selectable_background @drawable/actionbar_tab_bg @drawable/ad_spinner_background_holo_light @drawable/ad_menu_dropdown_panel_holo_light @drawable/ad_selectable_background <!– @drawable/ic_menu_view @drawable/action_button_background –> @drawable/custom_ratingbar @drawable/money_off 10dip 15dip centerInside

ActionBarDrawerToggle()图标无法设置为Android SDK 5中的ActionBar

我的操作栏初始化我的图标有一个简单的问题。 我使用Android SDK 5,因为android.support.v4.app.ActionBarDrawerToggle; 已弃用我导入了v7支持并使用以下内容替换了我的导入: android.support.v7.app.ActionBarDrawerToggle; 即与v7相同的包装。 现在,当我初始化我的ActionBarDrawerToggle对象以关联从我的导入的DrawerLayout对象: import android.support.v4.widget.DrawerLayout; 我被迫删除一个参数,这似乎没问题(虽然不知道为什么!)。 但是我的图标没有进入我的ActionBar。 这是我对ActionBarDrawerToggle对象的初始化: mActionBarDrawerToggle = new ActionBarDrawerToggle(this, drawerLayout, R.drawable.ic_drawer, R.string.drawer_open) { /** Called when a drawer has settled in a completely closed state. */ @Override public void onDrawerClosed(View view) { super.onDrawerClosed(view); invalidateOptionsMenu(); // creates call to onPrepareOptionsMenu() } /** Called when a drawer has settled […]