Questions tagged «android-support-library»

Android支持库包含来自较新平台的反向移植API和提供实用程序功能的API。

2
创建ActionMode时未调用onPrepareActionMode
我刚刚完成了其中一个应用程序的调整,以适应新的v22.1.1支持和appcompat库,有关更多详细信息,请参见此处和此处。当我进行一些测试时,我使用的ActionModes出现了问题。 使用调用启动ActionMode时startSupportActionMode()-不会被调用,而使用现在不建议使用的ActionBarActivity基类或新的AppCompatActivity基类onPrepareActionMode()。 在onPrepareActionMode()最初使用创建ActionMode时,包括v21.0.3和v22.0.0在内的早期版本会自动调用startSupportActionMode()。 我在2.2、4.4.2和5.0的设备上进行了测试,因此它似乎与版本无关。 有人知道,如果这是预期的行为,则是在v22.1.1中引入的,或者是错误? 我发现了这个问题,但是这里没有很多反馈... 编辑2015年5月11日: 如Android问题跟踪器159527中所述,此问题不仅影响appcompat v22.1.x和支持库,还影响Android 5.1的实现。 目前有两种可能的临时解决方案,一种是通用的: @Override public ActionMode startSupportActionMode(final ActionMode.Callback callback) { // Fix for bug https://code.google.com/p/android/issues/detail?id=159527 final ActionMode mode = super.startSupportActionMode(callback); if (mode != null) { mode.invalidate(); } return mode; } 和“快速而肮脏的”(当您实例化ActionMode时): final ActionMode actionMode = startSupportActionMode(new MyActionMode()); if(actionMode != null) { actionMode.invalidate(); …


12
Gradle Build Android Project“无法解决所有依赖性”错误
我正在尝试使用Gradle构建我的第一个项目,我认为gradle文件和设置正确。 我仅使用一个模块并支持V4 + AppCompatBar库。 项目-build.gradle allprojects { repositories { mavenCentral() } } 项目-settings.gradle include ':AssignmentTempos21' 主模块-build.gradle buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.5.+' } } apply plugin: 'android' repositories { mavenCentral() } android { compileSdkVersion 17 buildToolsVersion "17.0.0" defaultConfig { minSdkVersion 8 targetSdkVersion 17 } } dependencies …

8
Android矢量可绘制应用程序:srcCompat不显示图像
我正在使用支持库在android kitkat上显示矢量图像。当我在模拟器上测试我的应用程序时,我看不到任何这些图像。我为Android Lollipop及更高版本制作了单独的布局,并且运行良好(我认为是因为我使用的是src属性,而不是srcCompat下面的代码,这是我在USIG支持库中使用的代码 <LinearLayout android:layout_alignParentBottom="true" android:id="@+id/lake_detail" android:background="@drawable/my_fishing_plan_footer_line" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="90dp" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <RelativeLayout android:layout_marginRight="3dp" android:id="@+id/fire_logo" android:layout_width="20sp" android:layout_height="20sp"> <ImageView android:tint="#d74313" app:srcCompat="@drawable/circle_icon" android:layout_width="30sp" android:layout_height="30sp" /> <ImageView android:layout_centerVertical="true" android:layout_centerHorizontal="true" app:srcCompat="@drawable/lauzaviete" android:layout_width="25dp" android:layout_height="25dp" /> </RelativeLayout> 这很奇怪,因为我在android studio预览窗口中看到了图像。


1
设置Android背景和持久性菜单栏-在旧版本上使用属性会导致崩溃-是否有主题/图案方法?
在Android 3.0中,可以使用“激活的”背景来呈现“选中”的概念。这为您提供了在单击列表片段时看到的持久条,为列表的右侧提供了片段的上下文(例如,在Gmail中单击某个文件夹将突出显示该文件夹,并打开另一个列表片段以显示该文件夹中的对话)。 例如,片段样本显示如下内容: setListAdapter(new ArrayAdapter<String>(getActivity(), android.R.layout.simple_list_item_activated_1, Shakespeare.TITLES)); 该资源(android.R.layout.simple_list_item_activated_1)是Android 3.0的新功能。使它“激活”的原因是: android:background="?android:attr/activatedBackgroundIndicator" 据我所知,该属性值是Android 3.0的新增功能,如果您尝试在早期版本的Android上使用它,将会导致崩溃。我想将背景设置为3.0 /大/横向组合的此神奇值,否则将其跳过。 我可以通过使用两个单独的布局版本来实现此目的,一个版本在-v11资源集中,一个在常规资源集中。不过,这比我想要的DRY少了一点,因为布局的大部分是相同的,只有一个属性被包含或被跳过。 我尝试使用可绘制资源别名时遇到了麻烦,因此android:background可以引用别名,并且别名可以处理-v11差异,但是<bitmap>可绘制对象似乎并不喜欢android:src="@null"。 我怀疑有解决此问题的样式和主题的方法,但是由于我从未完全解决这些问题(这是我最尴尬的Android知识鸿沟之一),因此我不确定要怎么做。 有没有人想出一种模式,可以在3.0上使用“激活”,而在3.0之前的版本中可以跳过单独的布局呢? 谢谢!

16
工具栏导航“汉堡包”图标丢失
我正在寻找一种使用Drawer / DrawerToggle显示汉堡图标淡化并使用Android中包含的默认图标的方法 通过设置getSupportActionBar().setDisplayHomeAsUpEnabled(true);它显示后退箭头,但不显示汉堡包。Stackoverflow上的其他文章(例如this或this)使用DrawerLayout或自定义drawable。我在Android来源中找不到汉堡包图标的矢量或png。 您知道如何在android / support库中找到原始的汉堡包图标吗?(或如何显示) 注意:Vector和png可以在google.com/design网站上找到: http : //www.google.com/design/spec/resources/sticker-sheets-icons.html# 在我的活动中 mToolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(mToolbar); getSupportActionBar().setDisplayHomeAsUpEnabled(true); getSupportActionBar().setHomeButtonEnabled(true); mToolbar.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Log.d(LOG_TAG, "navigation clicked"); } }); 布局文件 <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_height="wrap_content" android:layout_width="match_parent" android:minHeight="?attr/actionBarSize" android:background="?attr/colorPrimary" app:theme="@style/ThemeOverlay.AppCompat.ActionBar"/> Styles.xml <!-- Base application theme. --> <style name="Theme.AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> …

11
插件错误:必需的插件“ Android支持”已禁用
我的logcat中出现插件错误 10:08:28 PM Plugin Error Problems found loading plugins: Plugin "Google Analytics Uploader" was not loaded: required plugin "Android Support" is disabled. Plugin "SDK Updater" was not loaded: required plugin "Android Support" is disabled. Plugin "Android NDK Support" was not loaded: required plugin "Android Support" is disabled. Plugin "Google App …


7
更新到最新的appcompat和支持库后出现DexIndexOverflowException问题
我通过以下方式使用以下设置gradle: compileSdkVersion 21 ANDROID_BUILD_MIN_SDK_VERSION=14 ANDROID_BUILD_TARGET_SDK_VERSION=21 ANDROID_BUILD_TOOLS_VERSION=21.0.2 ANDROID_BUILD_SDK_VERSION=21 我的gradle文件中也有以下设置: compile 'com.android.support:support-annotations:21.0.0' compile 'com.android.support:appcompat-v7:21.0.0' compile 'com.android.support:support-v4:21.0.0' 我总是会出错UNEXPECTED TOP LEVEL EXCEPTION。 但是,当我做21.0.0给20.0.0它工作正常...但我不能访问任何的Android API 21个选项。我在这里做错什么了吗?如何在没有此异常的情况下进行编译?除了其他年级项目(facebook等)之外,我在其他任何地方都没有支撑罐。 这是完整的堆栈跟踪: UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536 at com.android.dx.merge.DexMerger$6.updateIndex(DexMerger.java:502) at com.android.dx.merge.DexMerger$IdMerger.mergeSorted(DexMerger.java:283) at com.android.dx.merge.DexMerger.mergeMethodIds(DexMerger.java:491) at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:168) at com.android.dx.merge.DexMerger.merge(DexMerger.java:189) at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454) at com.android.dx.command.dexer.Main.runMonoDex(Main.java:302) at com.android.dx.command.dexer.Main.run(Main.java:245) at …

8
为什么不能将AndroidJUnit4和ActivityTestRule导入单元测试类?
我在导入某些Android UI测试框架类时遇到了麻烦-我只是不知道出了什么问题! 这是我的课: @RunWith(AndroidJUnit4.class) @LargeTest public class ExampleUnitTest { @Rule public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule(MainActivity.class); @Test public void listGoesOverTheFold() { onView(withText("Hello world!")).check(matches(isDisplayed())); } } 但是由于某种原因,我得到了错误“找不到符号ActivityTestRule”和“找不到符号AndroidJUnit4”。我尝试导入它们,但找不到它们。 build.gradle中的依赖项设置为: compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.4.0' androidTestCompile 'com.android.support:support-annotations:23.4.0' androidTestCompile 'com.android.support.test:runner:0.4' androidTestCompile 'com.android.support.test:rules:0.4' androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.1' androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2' 所以我想我已经完成了所有依赖项设置-我已经尝试了很多事情,但是没有运气。 谁有想法?


2
将Tab与新工具栏一起使用(AppCompat v7-21)
我正在使用带有选项卡和自定义ActionBar主题(使用http://jgilfelt.github.io/android-actionbarstylegenerator/创建的)的ActionActionBar,仅当用户展开搜索视图时才显示选项卡。 public boolean onMenuItemActionExpand(MenuItem item) { actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); return true; } } 我从ActionBar迁移到了Toolbar。我的应用程序确实需要支持API 9。 有没有一种方法可以使用此代码重新添加选项卡?: Toolbar toolbar = (Toolbar) findViewById(R.id.new_actionbar); setSupportActionBar(toolbar); getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 如果可能,如何使用自定义主题或设置工具栏样式? 该文档说,这已被弃用,并建议使用其他类型的导航。但我不知道Android中具有相同功能的任何其他组件。 一些帮助?

14
支持库VectorDrawable Resources $ NotFoundException
我正在使用版本23.4.0的设计支持库。我启用了gradle标志: defaultConfig { vectorDrawables.useSupportLibrary = true } 我正在使用版本23.0.2的构建工具,但仍然可以Resources$NotFoundException使用KitKat或更低版本。 当我使用android:drawableLeft或时会发生这种情况imageView.setImageResource(R.drawable.drawable_image)。 是的,我在使用可绘制对象的每个活动中都使用了此功能 static { AppCompatDelegate.setCompatVectorFromResourcesEnabled(true); } 这是支持库的错误吗?

25
无法解析符号AppCompatActivity-无法识别支持v7库?
我试图弄清楚为什么我的Android Studio无法正确识别AppCompat v7库。下面的import语句显示为灰色,并说没有support.v7.app的软件包。以下是我的活动文件: import android.support.v7.app.AppCompatActivity; public class XApplicationActivity extends AppCompatActivity 我的build.grade: compile "com.android.support:appcompat-v7:22.0.0" compile "com.android.support:support-annotations:$ANDROID_SUPPORT_VERSION" compile "com.android.support:support-v4:$ANDROID_SUPPORT_VERSION" 我的项目设置: minSdkVersion = 14 targetSdkVersion = 21 compileSdkVersion = 21 buildToolsVersion = "22.0.1" 因此,我对于为什么仍然给我带来问题感到非常困惑。我已经尝试过的事情: 清洁/重建项目 使缓存无效并重新启动 检查十亿次以确保我已安装支持库(我确实确实安装了最新的支持存储库和库) 有人知道任何修复程序吗?这花费了我很多时间,而且确实令人沮丧。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.