问题标签 [android-support-library]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android API Level 10 及以下列出指标的替代方案
我正在使用 Android 兼容性库使我的应用程序与早期版本的 android 兼容。我的应用程序的组成部分之一是能够在列表片段中永久突出显示用户的选择。我可以使用 API 级别 11 及更高级别的可绘制选择器使用该android:state_activated
属性方便地做到这一点。但事实证明,该属性仅在 API 级别 11 中引入。
现在我计划在早期的 API 级别中实现相同的目标,但我没有想法。有没有人有什么建议?
我相信我需要为旧 API 版本创建一个单独的布局 - res/layout-v10/
谢谢!
android - Android Fragments 兼容库导致的各种异常
我已经使用(Peter Doyle'sAndroid 支持/兼容性库(v4,修订版 7)的轻微变体,用于组合使用 Fragments 和 Google Maps 的 Activity。我已经在三星 Galaxy Nexus(冰淇淋三明治)、三星 Galaxy S II(冰淇淋三明治)、HTC Desire HD(姜饼)、HTC Wildfire S(姜饼)和模拟器上测试了该应用程序。该应用程序在这些设备上运行良好。没问题。但是,我已经发布了该应用程序,并且在各种手机上看到了由该库引起的不同类型的错误报告,尤其是在恢复 Activity 时(即,如果没有强制关闭,似乎具有 Fragments 的 Activity 无法在某些手机上恢复自身)。下面我粘贴了一些修剪过的堆栈跟踪作为示例。对此真的很恼火,因为我无法在我拥有的设备上复制它。
运行时异常:
java.lang.RuntimeException:
__无法启动活动...
java.lang.IllegalStateException:
__指定的孩子已经有一个父母。
__您必须首先在孩子的父母上调用 removeView()。
在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1713)
在 android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1738)
在 android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3024)
...
由: java.lang.IllegalStateException:
__指定的孩子已经有一个父母。
__您必须首先在孩子的父母上调用 removeView()。
在 android.view.ViewGroup.addViewInner(ViewGroup.java:1976)
在 android.view.ViewGroup.addView(ViewGroup.java:1871)
...
非法状态异常
java.lang.IllegalStateException:
__Can not perform this action after onSaveInstanceState
at android.support.v4.app.FragmentManagerImpl.checkStateLoss(Unknown Source)
at android.support.v4.app.FragmentManagerImpl.beginTransaction(Unknown Source)
...
非法状态异常
java.lang.IllegalStateException:
__Fragment cw{4067d550} 未附加到 Activity
...
运行时异常
java.lang.RuntimeException:
__Unable to resume activity...
java.lang.NullPointerException
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2124)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2139)
.. .
java - FragmentManager 中的 NullPointerException
我正在使用 Android 兼容性库,偶尔会感到奇怪NullPointerException
:
显然,我做错了什么,以允许FragmentManager
它进入这样的状态,它可能会像这样崩溃,但我不知道是什么。中的相关代码FragmentManagerImpl
没有为我提供任何线索。我猜mActivity
是null
在代码中的那个点?但这似乎是不可能的,因为活动已经在屏幕上,而且我没有向它添加任何片段 - 只是在ViewPager
.
android - Activity 和 FragmentActivity 的区别
我在处理片段时遇到了两件事Activity
,FragmentActivity
它们被多次使用。我想知道这两者之间有什么区别,因为当我用 更改Activity
时FragmentActivity
,它对应用程序没有影响。
android - 未调用 Android DialogFragment onViewCreated
我正在使用 android 兼容性库(v4 修订版 8)。在自定义 DialogFragment 中,未调用覆盖的方法 onViewCreated。例如。
onViewCreated 没有被记录。
android - 具有兼容库的 Android 片段
我不能让它工作。
我在这里发现了许多类似的问题,例如。但是没有任何帮助,也没有任何作用。有没有人在带有 android.support.v4 库的 Android 2.2 中有工作片段?(如果你是请上传到某个地方。)
我几乎要哭了,因为我找不到问题所在!
该错误与许多人的错误相同:
解决了!!!!谁在错误前有此警告:
应该将 android-support-v4 导出到您的应用程序:
配置 Java 构建路径 -> 订购和导出选项卡 ->设置复选框 android-support-v4.jar
(可能需要先删除现有的)
它会将这个库移动到你的apk(据我所知)
java - 当 ListFragment 从后堆栈返回布局时,如何刷新它?
首先我应该提到我正在使用 ActionBarSherlock 库来实现向后兼容性。
我有一个活动,ListFragment
它在首次启动时添加了一个。我有一个自定义Loader
,我实现并非常密切地遵循AsnycTaskLoader 示例。我ListFragment
实现了LoaderCallbacks<Cursor>
接口。onCreateLoader()
添加片段时( , onLoaderFinished()
)和替换片段时( ),将调用所有适当的回调方法onLoaderReset()
。
我的onActivityCreated(Bundle)
方法如下所示:
稍后,将ListFragment
替换为另一个 Fragment B。当用户按下后退按钮时,Fragment B 被删除并再次添加 ListFragment。但是,列表是空的,只android:empty
显示元素,并且没有调用任何 LoaderCallback 方法。我可以使用调试器来确定getLoaderManager().initLoader(0, null, this);
实际调用的,但没有别的。当我将其更改为 时getLoaderManager().restartLoader(0, null, this);
,会调用回调,但我的列表仍然为空(尽管有数据,但视图未刷新)。
当我的 ListFragment 返回到布局时,如何让我的 ListFragment 自行刷新?有没有人遇到过这种情况,你是怎么解决的?
仅供参考,这是我的回调方法
一些注意事项:
- 我不能使用
setListShown(true)
示例中的方法,因为我知道IllegalStateException
它不能与自定义内容视图一起使用。 - 我
AccountsCursorAdapter
扩展了 aSimpleCursorAdapter
并且只修改了bindView()
方法。
android - 屏幕方向更改后,片段(支持的库)在 onActivityCreated() 中看不到活动
我正在使用 Android 支持库 v13。有一件奇怪的事情我无法理解。
创建新活动时,我将片段加载为:
主要活动布局:
主要onCreate()
活动:
现在,一切都在模拟器 1.5、1.6 和 2.2 中完美运行。我有一部手机2.2.2。
但是有一个例外:如果应用程序正在运行,并且屏幕方向发生了变化。里面onActivityCreated()
,getActivity()
有时返回null
。这只发生在模拟器 1.5/ 1.6/ 2.2 中。
我的手机2.2.2运行良好,我测试了数百次,但从未发现该错误。甚至其他模拟器 3.x、4.x 也能正常工作。不幸的是,我没有手机 1.5/ 1.6/ 2.2。
那么你有这方面的经验吗?这是支持库或模拟器的错误吗?
android - 无法在 ContextImpl.openFileOutput 启动由 NullPointerException 引起的活动
我发布了一个应用程序,它使用谷歌地图的 Android 兼容性库 ( https://github.com/petedoyle/android-support-v4-googlemaps ),我收到了一些奇怪的“无法启动活动”崩溃报告。
我在下面粘贴了几个示例堆栈跟踪。有其他人使用 Google Maps 的 Android 兼容性库,甚至使用标准的 Android 兼容性库 ( http://developer.android.com/sdk/compatibility-library.html ) 体验过吗?任何人都知道我如何能够克服这个错误?
----- 示例堆栈跟踪 1 -----
----- 示例堆栈跟踪 2 -----
android - HTC One X - 显示“兼容性”菜单图标
我有使用 Sherlock ActionBar 包的应用程序。
该应用程序对菜单使用特定于平台的行为(因此它是 ICS 上 ActionBar 中的 3 点图标和 pre-ICS 上 HW 按钮下的经典菜单)
我收到了一位使用 HTC One X 的用户的报告。看起来,One X 在屏幕底部显示了一些带有菜单按钮的“兼容性”栏,并且 ActionBar 中也有相同的按钮(它应该在哪里)。
我无法在 AVD 中模拟这一点,并且我有多个报告称 Galaxy Nexus 或 Galaxy S 上不存在此问题(它们仅在 ActionBar 中显示图标)。
我不知道在哪里寻找解决这个问题或如何调试它,所以任何帮助或解决方法将不胜感激。
应用程序是针对 API14 构建的,targetSdk="11"