Articles of android actionbar

ActivityUnitTestCase和带有ActionBarActivity的startActivity

我尝试testing使用ActionBarActivity(从appcompat库)的活动。 我需要一个自定义应用程序来操作DI系统来加载我的testing服务,而不是真正的服务。 如果我有我的testing写和调用startActivity我得到以下错误: java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity. 如果我调用launchActivityWithIntent,则Activity将毫无问题地启动,但它使用的是Real Application类而不是Mocked Application类。 任何想法如何我可以解决这个问题,或者我可以在应用程序的onCreate之后如何执行代码被调用,但是在我的Activitytesting中调用了Activity的getCreate之前?

我如何获得Android的溢出菜单图标的副本?

我如何获得一个Android的溢出菜单图标的副本,以在自定义菜单中使用。

菜单项的自定义视图

我需要有一个dynamic的菜单项,一个用户定义的颜色,如下所示: 触摸这个菜单项将打开一个颜色select器。 现在,我有扩展视图的示例ColorPickerIcon public class ColorPickerIcon extends View { private Paint mPaint; private int mColor; private final int mRadius = 20; public ColorPickerIcon(Context context) { super(context); mColor = Color.BLACK; mPaint = createPaint(); } public ColorPickerIcon(Context context, AttributeSet attrs) { super(context, attrs); mColor = Color.BLACK; mPaint = createPaint(); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); […]

如何获得ActionBar视图?

我正在使用Showcase库向用户解释我的应用程序function。 在某些时候,我需要调暗整个ActionBar ,向用户呈现另一个特征。 为此,我使用View类的setAlpha(float num) 。 所以为了做到这一点,我需要得到我的ActionBar的实际视图实例 顺便说一下,我正在使用支持旧系统的ActionBar支持的support-7-appcompat库。 更新: 与此同时,我发现这个选项,如果你configuration一个自定义视图,并将其添加到您的ActionBar使用: getSupportActionBar().setCustomView(v); 然后获得ActionBar的View ,你可以这样做: (View) activity.getSupportActionBar().getCustomView().getParent().getParent() 但是我认为必须有一个更简单,更简单的方法来做到这一点。 有谁知道吗? 提前致谢。

Android操作栏主页button

我已经设置了我的动作栏,但没有任何反应,当我点击自上而下的button。 下面的两个选项是启用的,所以不应该自动进入家庭活动? ab.setHomeButtonEnabled(true); ab.setDisplayHomeAsUpEnabled(true); 行动酒吧 @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater(); inflater.inflate(R.menu.menu, menu); final String[] activities; Resources res = getResources(); activities = res.getStringArray(R.array.activities); ActionBar ab = getActionBar(); ab.setHomeButtonEnabled(true); ab.setDisplayHomeAsUpEnabled(true); ab.setTitle(R.string.app_name); ab.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); ab.show(); /** Create an array adapter to populate dropdownlist */ ArrayAdapter<String> adapter = new ArrayAdapter<String>(getBaseContext(), android.R.layout.simple_spinner_dropdown_item, activities); /** Setting dropdown […]

在Sherlock Action Bar中显示不确定的进展

我试图通过以下代码在ABS v。4.0.2中显示不确定的进度条 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); setContentView(R.layout.main); getSherlock().setProgressBarIndeterminateVisibility(true); } 在ICS虚拟设备上,它工作正常,但进展不显示在设备与Android 2.1。 我做错了什么?

以前的片段在新的片段下可见

我有一个选项卡+ ViewPager布局,并在这些选项卡之一,我有一个列表视图。 当我在onclick上replace该列表片段时,仍然可以看到新片段下的旧片段。 看到: 码: FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction transaction = fragmentManager.beginTransaction(); HallsInStateFragment hallsForState = new HallsInStateFragment(); transaction.replace(R.id.container, hallsForState); transaction.addToBackStack(null); transaction.commit(); R.id.container是视图中的FrameLayout。

在Android上从Java设置splitActionBarWhenNarrow

我想知道是否有可能告诉android分裂的ActionBar只有当我想要它,但在同一个活动。 我的使用案例是,默认情况下,我在栏上的操作可以折叠,但长时间点击一个项目,我进入一个“编辑任务”模式,其中操作栏用于提供一些简写编辑任务。 我希望这个“编辑模式”使用拆分动作栏,因为它具有更好的可以立即显示的图标,并保留常规视图的“不拆分”操作栏 – 它只是“设置”等等 所以问题是,我可以在代码中设置android:uiOptions="splitActionBarWhenNarrow" ,而不是将其硬编码到Manifest中? PS:我正在使用ActionBar Sherlock。

用户定义的ActionBar操作视图:获得正确的宽度

在冰淇凌三明治: 我正在寻找添加一个AutoCompleteTextView通过标准的动作视图机制的ActionBar(因为SearchView不可用前ICS,我也使用ActionBarSherlock ): <item android:id="@+id/menu_search" android:actionViewClass="com.example.AutoCompleteActionView" android:showAsAction="ifRoom" android:title="@string/address"></item> <item android:id="@+id/menu_close" android:icon="@drawable/ic_menu_close_clear_cancel" android:showAsAction="always"></item> <item android:id="@+id/menu_ok" android:icon="@drawable/ic_menu_ok" android:showAsAction="always"></item> 这个工作,但是默认情况下,它不会消耗我想要的ActionBar中的可用空间。 我查看了SearchView的源代码 ,看到它如何覆盖onMeasure ,并为我自己的类创build了同样的事情,我从AutoCompleteTextView派生了类。 当我这样做时,AutoCompleteTextView消耗所有的空间 ,留下两个我想要显示在右边的菜单项的空间。 当MeasureSpec.getMode()是MeasureSpec.AT_MOST时,看起来从MeasureSpec.getSize()返回的宽度没有考虑另外两个菜单项。 任何人做了类似的事情 有什么build议么? 谢谢你,达米安

Android – 活动首页/向上箭头有额外的填充/边缘与SDK 24

我刚刚使用SDK 23更新了我的应用程序到SDK 24。 我的活动出现了一些问题,这些活动显示了Up / Home箭头(即, getSupportActionBar().setDisplayHomeAsUpEnabled(true) ),因为上箭头和活动标题之间存在额外的(不需要的)空间。 对于没有向上箭头的活动,活动标题与以前完全相同,这表明额外的填充/页边距与向上箭头相关联,而不是与活动标题相关联。 我的问题是如何更改布局,使其看起来与SDK 24一样,与SDK 23一样? 向上箭头和标题之间的差距使用SDK 23: 使用SDK 24向上箭头和标题之间的大(不需要的)间隙: 这是我旧的build.gradle(SDK 23): apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { applicationId "com.example.myapp" minSdkVersion 19 targetSdkVersion 23 versionCode 42 versionName "0.42" } buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } packagingOptions { exclude 'META-INF/DEPENDENCIES' […]