我正在尝试在我的应用程序中实现制表符,并且已经从Google添加了SlidingTabLayout.java和SlidingTabStrip.java.我还确保在SlidingTabLayout类中添加setDistributeEvenly方法.
我的问题来自R.attr.colorForeground.我收到错误'无法解析sysmbol'colorForeground'.
以下是为这些选项卡创建的两个类.
class SlidingTabStrip extends LinearLayout {
private static final int DEFAULT_BOTTOM_BORDER_THICKNESS_DIPS = 0;
private static final byte DEFAULT_BOTTOM_BORDER_COLOR_ALPHA = 0x26;
private static final int SELECTED_INDICATOR_THICKNESS_DIPS = 3;
private static final int DEFAULT_SELECTED_INDICATOR_COLOR = 0xFF33B5E5;
private final int mBottomBorderThickness;
private final Paint mBottomBorderPaint;
private final int mSelectedIndicatorThickness;
private final Paint mSelectedIndicatorPaint;
private final int mDefaultBottomBorderColor;
private final SimpleTabColorizer mDefaultTabColorizer;
private int mSelectedPosition;
private float mSelectionOffset;
private SlidingTabLayout.TabColorizer mCustomTabColorizer;
SlidingTabStrip(Context context) {
this(context, null);
}
SlidingTabStrip(Context context, AttributeSet attrs) { …Run Code Online (Sandbox Code Playgroud) 尝试将我的应用程序更新到 Android S 并遇到标题/错误所说的一些问题。我收到错误
针对 S+(版本 10000 及更高版本)要求在创建 PendingIntent 时指定 FLAG_IMMUTABLE 或 FLAG_MUTABLE 之一。强烈考虑使用 FLAG_IMMUTABLE,仅当某些功能依赖于 PendingIntent 是可变的时才使用 FLAG_MUTABLE,例如,如果它需要与内联回复或气泡一起使用。
我的代码中只有 1 个 PendingIntent 用于通知,并且我添加了 Flag
PendingIntent.getActivity(
mContext,
0 /* Request code */,
intentOptional.get(),
PendingIntent.FLAG_IMMUTABLE
)
Run Code Online (Sandbox Code Playgroud)
阅读 Google 的文档,这应该是我在 Android S 中进行此安全更新所需的全部内容。我确实在这里找到了几个月前的帖子,询问了类似的问题,有人说要添加 WorkManager /sf/answers/4702709721/ 4219444进入项目,即使你不使用它。所以我加了
def work_version = "2.7.0-alpha04"
implementation "androidx.work:work-runtime-ktx:$work_version"
Run Code Online (Sandbox Code Playgroud)
这根本没有帮助,因为我仍然收到错误。有谁知道这是 Android S 升级的常见问题还是它也检查库?卡住了,因为应用程序只是不断崩溃,不知道该怎么做。
我创建了一个没有我的库的应用程序,并使用了相同的 PendingIntent,并且能够运行一个带有待处理意图的基本 hello world 应用程序。我从我试图编译的项目中收到的完整错误是:
针对 S+(版本 10000 及更高版本)要求在创建 PendingIntent 时指定 FLAG_IMMUTABLE 或 FLAG_MUTABLE 之一。强烈考虑使用 FLAG_IMMUTABLE,仅当某些功能依赖于 PendingIntent 是可变的时才使用 FLAG_MUTABLE,例如,如果它需要与内联回复或气泡一起使用。在 android.app.PendingIntent.checkFlags(PendingIntent.java:375) 在 android.app.PendingIntent.getBroadcastAsUser(PendingIntent.java:645) 在 android.app.PendingIntent.getBroadcast(PendingIntent.java:632) 在 com.google。 …