Questions tagged «android-5.0-lollipop»

Android Lollipop(以前称为“ Android L”)首次在Google I / O 2014上展出。最终名称在10月15日得到确认。它支持API级别21。

10
如何在简单的布局中创建波纹效果
触摸布局时,如何在简单的线性/相对布局中产生波纹效果? 我尝试将布局的背景设置为类似以下内容: <?xml version="1.0" encoding="utf-8"?> <ripple xmlns:android="http://schemas.android.com/apk/res/android" android:color="?android:colorControlHighlight" > <item android:drawable="@android:color/white"/> </ripple> 但是,在触摸版面时,我只会看到纯白色的背景并且没有波纹效果。我究竟做错了什么? 编辑: 供参考,这是我的布局xml文件: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="250dp" android:layout_height="250dp" android:background="@drawable/test" android:clickable="true"> </RelativeLayout>

8
使用attr / selectableItemBackground作为背景时,如何修改波纹颜色?
我已经看到了一些SO问题,他们提供了一些可能的方法来实现我想要的。例如: 用 colorControlHighlight在styles.xml中属性。 这是我的styles-v21.xml: <style name="SelectableItemBackground"> <item name="android:colorControlHighlight">#5677FC</item> <item name="android:background">?attr/selectableItemBackground</item> </style> 而我的小部件: <TextView android:id="@+id/tv_take_photo_as_bt" android:layout_width="280dp" android:layout_height="48dp" android:text="@string/act_take_photo" style="@style/SelectableItemBackground"/> 而且它不起作用。我还尝试添加parent="Theme.AppCompat到“ SelectableItemBackground”样式,或者更改为colorControlHighlight(no android: prefix)",或更改为?android:attr/selectableItemBackground,都没有用。 backgroundTint在布局中使用属性。 所以我加android:backgroundTint="#5677FC"了TextView。仍然没用。然后,我尝试将其更改android:backgroundTintMode为src_in和src_atop,但它们从未改变。 因此,当?attr/selectableItemBackground用作背景时,如何更改波纹颜色。我只关注棒棒糖及以上。先感谢您!

13
Android支持设计TabLayout:重力中心和模式可滚动
我正在尝试在项目中使用新的Design TabLayout。我希望布局能够适应每种屏幕尺寸和方向,但是可以在一个方向上正确看到它。 我正在将我的tabLayout设置为Gravity和Mode: tabLayout.setTabGravity(TabLayout.GRAVITY_CENTER); tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE); 因此,我希望如果没有空间,则tabLayout是可滚动的,但是如果有空间,则它将居中。 从指南: public static final int GRAVITY_CENTER用于在TabLayout中心布置标签的重力。 public static final int GRAVITY_FILL用于尽可能多地填充TabLayout的重力。该选项仅在与MODE_FIXED一起使用时才生效。 public static final int MODE_FIXED固定选项卡可同时显示所有选项卡,最好与可在选项卡之间快速旋转的内容一起使用。选项卡的最大数量受视图宽度限制。固定制表符的宽度相等,基于最宽的制表符标签。 public static final int MODE_SCROLLABLE可滚动选项卡在任何给定时刻显示选项卡的子集,并且可以包含更长的选项卡标签和更大数量的选项卡。当用户不需要直接比较选项卡标签时,它们最适合用于在触摸界面中浏览上下文。 因此GRAVITY_FILL仅与MODE_FIXED兼容,但在GRAVITY_CENTER中未指定任何内容,我希望它与MODE_SCROLLABLE兼容,但这就是我使用GRAVITY_CENTER和MODE_SCROLLABLE获得的 因此,它在两个方向上都使用SCROLLABLE,但未使用GRAVITY_CENTER。 这是我对景观的期望;但是要拥有它,我需要设置MODE_FIXED,所以我得到的肖像是: 如果tabLayout适合屏幕,为什么GRAVITY_CENTER无法用于SCROLLABLE?有没有办法动态设置重力和模式(并查看我的期望)? 非常感谢你! 编辑:这是我的TabLayout的布局: <android.support.design.widget.TabLayout android:id="@+id/sliding_tabs" android:layout_width="match_parent" android:background="@color/orange_pager" android:layout_height="wrap_content" />

5
如何从Android appcompat v7 21库实现DrawerArrowToggle
因此,既然发布了Android 5.0,我想知道如何实现动画的操作栏图标。 该库在这里实现它为我好,但由于程序兼容性V7图书馆它怎么能实现? 该库在themes.xml中引用了它 <item name="drawerArrowStyle">@style/Widget.AppCompat.DrawerArrowToggle</item> 在这种风格下 <style name="Base.V7.Theme.AppCompat" parent="Platform.AppCompat"> 更新 我使用v7 DrawerToggle实现了此功能。但是我不能定型。请帮忙 我在v7 styles_base.xml中找到了样式 <style name="Base.Widget.AppCompat.DrawerArrowToggle" parent=""> <item name="color">?android:attr/textColorSecondary</item> <item name="thickness">2dp</item> <item name="barSize">18dp</item> <item name="gapBetweenBars">3dp</item> <item name="topBottomBarArrowSize">11.31dp</item> <item name="middleBarArrowSize">16dp</item> <item name="drawableSize">24dp</item> <item name="spinBars">true</item> </style> 我将此添加到了样式中,但没有用。还添加到我的attr.xml <declare-styleable name="DrawerArrowToggle"> <!-- The drawing color for the bars --> <attr name="color" format="color"/> <!-- …

8
Android Lollipop,AppCompat ActionBar自定义视图不会占用整个屏幕宽度
因此,我刚刚将代码库更新为Lollipop,并且操作栏出现问题。我正在使用AppCompat和ActionBarActivity,并放大自定义视图。自定义视图似乎不再占据屏幕的整个宽度,在左侧留下一条细条 它过去的样子 现在的样子 这是我用来设置操作栏的代码。有人有主意吗? final ActionBar actionBar = getSupportActionBar(); if(actionBar != null) { actionBar.setDisplayHomeAsUpEnabled(false); actionBar.setDisplayShowHomeEnabled(false); actionBar.setDisplayShowTitleEnabled(false); actionBar.setDisplayShowCustomEnabled(true); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD); actionBar.setCustomView(R.layout.action_bar_content_search_custom_view); actionBar.setBackgroundDrawable(null); // actionBar.setStackedBackgroundDrawable(null); TextView title = (TextView) actionBar.getCustomView().findViewById(R.id.action_bar_title); title.setText(R.string.youtube); ImageView back = (ImageView) actionBar.getCustomView().findViewById(R.id.action_bar_back); back.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { finish(); } }); } 编辑 现在,取出自定义视图并更改背景会占用整个宽度。因此,问题在于,如何使CustomView占据ActionBar的整个宽度?


4
将Material Design触摸纹波应用到ImageButton?
我有一个imagebutton在单击时不会响应触摸动画,因为它是静态图像,与棒棒糖上的常规按钮不同,后者带有内置波纹效果。我想在图像上添加材质设计的波纹触摸效果,但似乎找不到实现它的方法。我可以在图像上设置彩色滤光片,但这不是波纹效果。我要尝试执行的一个示例是,当您将专辑封面图像保存在Google Play音乐中时,阴影波纹在图像上移动。

21
尝试在Android 5.0上使用RecyclerView时应用崩溃
我试图弄乱新的RecyclerView,并且每当尝试运行它时,我的应用程序立即崩溃。它为我提供了NullPointerException,用于尝试从中访问方法android.support.v7.widget.RecyclerView。我查看了其他帖子,发现大多数人都没有,compile 'com.android.support:recyclerview-v7:+'但是我尝试了一下,但完全没有帮助。目前还不确定要怎么做,我们将不胜感激。这里是错误日志:(我会发布图片,但我还没有10位代表) java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.widget.RecyclerView$LayoutManager.onMeasure(android.support.v7.widget.RecyclerView$Recycler, android.support.v7.widget.RecyclerView$State, int, int)' on a null object reference at android.support.v7.widget.RecyclerView.onMeasure(RecyclerView.java:1764) at android.view.View.measure(View.java:17430) at android.widget.RelativeLayout.measureChildHorizontal(RelativeLayout.java:727) at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:463) at android.view.View.measure(View.java:17430) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5463) at android.widget.FrameLayout.onMeasure(FrameLayout.java:430) at android.view.View.measure(View.java:17430) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5463) at android.widget.FrameLayout.onMeasure(FrameLayout.java:430) at android.view.View.measure(View.java:17430) at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5463) at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436) at android.widget.LinearLayout.measureVertical(LinearLayout.java:722) at android.widget.LinearLayout.onMeasure(LinearLayout.java:613) at android.view.View.measure(View.java:17430) …

22
如何为Android L预览导入RecyclerView
尝试使用支持库中的新RecyclerView。我使用SDK管理器下载了支持库的20个更新。 我已经将jar文件添加到libs文件夹中-并添加到了构建路径中-使用RecyclerView祝您好运。 根据Android开发人员的API尝试也使用gradle依赖项-不确定这是否是正确的地方-此页面与AndroidTV相关性更高: com.android.support:recyclerview-v7:20.0.+ 无法gradle同步项目。 有任何想法吗?

10
如何在Android 5.0(Lollipop)中以编程方式接听来电?
当我尝试为来电创建自定义屏幕时,我试图以编程方式接听来电。我正在使用以下代码,但在Android 5.0中不起作用。 // Simulate a press of the headset button to pick up the call Intent buttonDown = new Intent(Intent.ACTION_MEDIA_BUTTON); buttonDown.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_HEADSETHOOK)); context.sendOrderedBroadcast(buttonDown, "android.permission.CALL_PRIVILEGED"); // froyo and beyond trigger on buttonUp instead of buttonDown Intent buttonUp = new Intent(Intent.ACTION_MEDIA_BUTTON); buttonUp.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_HEADSETHOOK)); context.sendOrderedBroadcast(buttonUp, "android.permission.CALL_PRIVILEGED");

10
在状态栏上半透明的导航抽屉不起作用
我正在研究Android项目,正在实现导航抽屉。我正在阅读新的《材料设计规范》和《材料设计清单》。 规范说,滑出窗格应该漂浮在包括状态栏在内的所有其他内容之上,并且在状态栏上是半透明的。 我的导航面板在状态栏上,但是没有任何透明度。我已经按照Google开发人员博客专栏中的建议,遵循了该SO帖子中的代码,该链接位于上方的链接如何使用DrawerLayout在ActionBar / Toolbar和状态栏下方显示?。 下面是我的XML布局 <android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/my_drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <android.support.v7.widget.Toolbar android:id="@+id/my_awesome_toolbar" android:layout_height="wrap_content" android:layout_width="match_parent" android:minHeight="?attr/actionBarSize" android:background="@color/appPrimaryColour" /> </LinearLayout> <LinearLayout android:id="@+id/linearLayout" android:layout_width="304dp" android:layout_height="match_parent" android:layout_gravity="left|start" android:fitsSystemWindows="true" android:background="#ffffff"> <ListView android:id="@+id/left_drawer" android:layout_width="match_parent" android:layout_height="match_parent" android:choiceMode="singleChoice"></ListView> </LinearLayout> </android.support.v4.widget.DrawerLayout> 以下是我的应用主题 <style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar"> <item name="colorPrimary">@color/appPrimaryColour</item> <item name="colorPrimaryDark">@color/appPrimaryColourDark</item> <item name="colorAccent">@color/appPrimaryColour</item> <item name="windowActionBar">false</item> …



3
更改棒棒糖上的通知图标背景
我正在经历 通知”设计模式,但没有发现任何有关通知图标背景的内容。您可能已经注意到,自定义通知只有浅灰色的背景。但是环聊或简单的USB调试通知等应用的通知图标背景具有自定义颜色。 是否有可能将灰色更改为其他颜色?(以编程方式指定特定圆圈的颜色)

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 …

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.