Articles of android actionbar

Android:setActionView(null)不会使用ActionView去除MenuItem上的视图和宽度问题

我尝试使用与ActionBarHelper for Honeycomb类似的方式为ActionBar创build一个具有动作视图的MenuItem,以使其具有旋转刷新button。 但是我有两个麻烦: 当我显示动作视图时,项目的宽度小于MenuItem(请参见截图的第1部分和第2部分) 当我想停止animation并通过setActionView(null)返回到默认的MenuItem状态时,我的动作视图仍然显示在我的MenuItem(截图的第3部分) MenuItem的不同步骤(屏幕截图) ActionView布局(R.layout.menu_item_refresh)是: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:gravity="center"> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_menu_refresh" /> </LinearLayout> onOptionsItemSelected方法的代码是: @Override public boolean onOptionsItemSelected(MenuItem item) { switch(item.getItemId()){ default: return super.onOptionsItemSelected(item); case R.id.Menu_Feed_Refresh: mAnimatedItem = item; item.setActionView(R.layout.menu_item_refresh); item.startAnimation(mAnimation); load(); return true; } } 加载完成后,我调用处理程序mAnimatedItem.setActionView(null)

Jelly Bean上的ActionBarSherlock标签高度不可调整

我正在用ActionBarSherlock创build一个应用程序,并使用ActionBar选项卡。 以下是我如何定义标签: actionBar.addTab(actionBar.newTab().setText("test").setTabListener(new TabListener<AccountsListFragment>(this, "accounts",AccountsListFragment.class))); 我正在尝试改变标签的高度。 据我所知,没有办法改变标签的高度。 您还必须更改主要操作栏的高度(我正在拉动我的主要操作栏的定义) http://developer.android.com/design/patterns/actionbar.html#considerations-split-action-bars那么如何改变操作栏的高度就是在主要主题中使用下面的样式 <item name="actionBarSize">100dp</item> <item name="android:actionBarSize">100dp</item> 上面的代码似乎可以在所有设备上工作,以更改主要操作栏和除了糖果豆之外的选项卡。 我在4.1.2星系链接上testing了这个。 同样在4.2 Nexus 7上。两者似乎都是一样的。 它只改变主要的操作栏而不是标签的高度。 我们也尝试了自定义视图的标签没有帮助我们。 如果任何人都可以指向我在谷歌的地方它说,他们不允许改变标签的高度了(我怀疑是这种情况)或给我一个风格来解决这个问题。 我将不胜感激。 如果你甚至给我一个正常的行动栏上的例子,而不是sherlock应该帮助我。

重写ActionBarCompat溢出popup背景?

我正在使用actionbarcompat为我的android项目和使用@style/Theme.AppCompat.Light.DarkActionBar作为我的基础主题。在这个行动栏的溢出菜单默认情况下,我想改变为白色color.I知道这个黑色的背景可以完成overdding popup widget的属性popupBackground但它不工作在我的case.My样式文件有以下代码: <style name="MyTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar"> <item name="android:actionBarStyle">@style/MyActionBar</item> <item name="android:actionDropDownStyle">@style/MyActionBarDropDown</item> <item name="android:popupMenuStyle">@style/PopupMenu</item> </style> <style name="PopupMenu" parent="@style/Widget.AppCompat.PopupMenu"> <item name="android:popupBackground">@drawable/menu_dropdown_panel_example</item> <item name="popupBackground">@drawable/menu_dropdown_panel_example</item> </style> 但是上面的代码没有运行,因为它给我错误:找不到与给定名称相匹配的资源:attr'popupBackground'。有些请帮我修改上面的代码。

实现谷歌播放和地图像search栏android

我有一个要求,创build一个谷歌播放和地图像filter的search栏在我的项目,但我不知道如何开始。 我试图通过自定义的实现,如下所示: 自动完成TextView里面的ToolBar android MainActivity.java toolbar = (Toolbar) findViewById(R.id.tool_bar); setSupportActionBar (toolbar); ArrayList<String> searchArrayList = new ArrayList<String>(); searchArrayList.add("United States"); searchArrayList.add("France"); searchArrayList.add("United Kingdom"); searchArrayList.add("India"); searchArrayList.add("Indonesia"); searchArrayList.add("Germany"); searchArrayList.add("Spain"); AutoCompleteAdapter adapter = new AutoCompleteAdapter(this, R.layout.list_item, R.id.textView1, searchArrayList); AutoCompleteTextView autoCompleteTextView = (AutoCompleteTextView) findViewById(R.id.searchAutoComplete); autoCompleteTextView.setDropDownWidth(getResources().getDisplayMetrics().widthPixels); autoCompleteTextView.setAdapter(adapter); 使用ArrayAdapter自定义AutoCompleteAdapter类的实现 AutoCompleteAdapter.java public class AutoCompleteAdapter extends ArrayAdapter<String> implements Filterable { private ArrayList<String> fullList; private ArrayList<String> […]

在Android中的单个菜单项中实现三个动作

我想要在手机的chrome浏览器中具有与图片中类似的菜单项function。 我想要返回,转发,刷新菜单项在一个单一的行。 我怎样才能实现一个类似的菜单项? 有没有任何参考或是否有任何破解带来这个function? 我的应用程序只针对平板电脑。 这是我目前的操作栏菜单项: <menu xmlns:android="http://schemas.android.com/apk/res/android" > <item android:id="@+id/favorite" android:showAsAction="always" android:title="Happy"/> <item android:id="@+id/share_button" android:icon="@drawable/share" android:showAsAction="always" android:title="Share"/> <item android:id="@+id/hola_button" android:showAsAction="always" android:title="Hola"/> <item android:icon="@drawable/more_actions" android:showAsAction="always"> <menu> <item android:id="@+id/back_button" android:icon="@drawable/back" android:title="back"/> <item android:id="@+id/forward_button" android:icon="@drawable/forward" android:title="forward"/> <item android:id="@+id/refresh_button" android:icon="@drawable/refresh" android:title="refresh"/> </menu> </item> </menu>

使用ActionBar选项卡获取onCreateView中的Google地图片段

我试图在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 […]

带活动的TabHost与带碎片的ActionBar

我发现了一些有关这个问题的讨论,但没有明确或明确的。 构build一个基于选项卡的应用程序似乎被迫在(A)使用TabHost和每个屏幕的活动之间进行select,(B)在每个屏幕上使用带有Fragments的ActionBar。 这提出了几个问题: 1)这是真实的困境,还是可以使用ActionBar与不同的活动。 2)如果这个困境是真实的,那为什么这样做呢? Google是否计划将TabHost和多活动方法弃用到基于标签的导航? 对于多重活动方法有什么不好的地方吗? 3)如果两种方法都能得到支持,每种方法的优缺点是什么? 如果我使用ActionBar + Fragments,我会遇到任何陷阱吗? 例如,当我想让我的一个标签页面在另一个屏幕/ Fragment上滑动/popup时,我是否会在ActionBar中切换到/从标签中获得有趣的行为?

两个动作栏(底部和上部)在同一时间?

我需要做两个动作吧,顺便说一句,我正在使用actionBarSherlock。 所以我需要的是在正常的操作栏上放置一个“欢迎屏幕”切换,并添加两个正常的ActionBar操作选项。 类似于我需要的Gmail和地图像这里: http : //cdn.androidcommunity.com/wp-content/uploads/2012/03/Screenshot_2012-03-28-12-58-16.png (他们没有让我张贴一个形象为声誉低,请参阅链接) 这个地图应用程序有一个上下行动栏,正是我所需要的,因为一旦我达到了我可以添加第二个行动栏的地步,我知道从哪里开始… 我已经search了大约一个星期关于这个话题,我发现了一些类似的问题,但是,我已经理解了非答案; 答案是关于一个习惯的看法,我根本就不熟悉,我不明白一件事情,但是是的,我试图从我认为是正确的任何东西做出一个“自定义的观点”,我得到了我没有做过的事情找不到任何解决scheme…如果你可能会显示我作为一个例子,这个地图应用程序如何使用这两个动作酒吧? (我不想像在地图和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){ tog.setChecked(true); […]

我可以在ActionBar菜单图标中使用vector绘图文件吗?

我可以在ActionBar菜单图标中使用vector文件吗? 现在,appCompat支持API> 8的vector文件。我可以在ActionBar菜单中使用vector绘制吗?

Android的ActionBar:显示/隐藏标签dynamic?

是否有可能从动作栏dynamic删除/恢复标签栏? 到目前为止,我通过改变操作栏的导航模式来做到这一点。 我使用下面的代码来删除和恢复标签栏: @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并重新创build当前的TabListener选项卡。