一、环境
android stuido 2.2 preview 1、2、3,三个版本都出现了这个问题,我是一路升过来的。每次都期盼下个版本会解决,然而并没有,直到......
com.android.tools.build:gradle:2.2.0-alpha3
compileSdkVersion 24
compile 'com.android.support:appcompat-v7:24.0.0' compile 'com.android.support:cardview-v7:24.0.0' compile 'com.android.support:palette-v7:24.0.0' compile 'com.android.support:design:24.0.0'
compile 'com.android.support:support-v4:24.0.0'
compile 'com.android.support:recyclerview-v7:24.0.0'
二、问题所在
1、cardView
recyclerview 下的item下都是cardView,cardView中配置了以下参数
android:foreground="?attr/selectableItemBackground"(加了这个后,在5.0以下是会有点击效果的,在包括5.0在内的以上的都是Ripple效果)
2.tabLayout(这些tab是都不需要自己配置selector,都会有按下的效果的)
3.上面两个只是例子,以证明并不是我的点9图做的有问题。他们都是支持库下的资源,com.android.support.appcompat-v7下的资源图片。那么如果是自己弄的9patch图是怎样的呢?没错,你所画的黑线会一直显示出来。我就不列举截图了。一句话说就是,这个9patch图并没有被识别。
三、解决方案
一开始,我以为是build的过程中出现问题,尝试rebuild,clean,(我记得好像试过反复clean和rebuild了之后没有问题,但多数还是不行),尝试过把build目录下的所有东西都删除,让gradle重新引用,重新下载,结果还是不行。去问别人吧,还真问不出来,这些人一看,说你做的9-patch有问题。好了,直到今天修复这个问题刻不容缓,于是google,终于......
想看看别人的遭遇的话可以从下面链接去看看,#12有原因和解决。懒得看的话就直接更新android stuido 2.2 preview 4,Gradle plugn version 2.2.0-alpha4.即可解决问题,