android 有时候stroke不起作用

如下:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_pressed="false" >
        <shape>
            <solid android:color="#ffffff"/>
            <stroke android:color="#888" />
            <corners android:radius="3dp"/>
        </shape>
    </item>
    <item android:state_pressed="true">
        <shape>
            <solid android:color="#dddddd"></solid>
            <stroke android:color="#888" />
            <corners android:radius="3dp"/>
        </shape>
    </item>
</selector>

原因:stroke没有设置宽度

解决方案:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
    <item android:state_pressed="false" >
        <shape>
            <solid android:color="#ffffff"/>
            <stroke android:color="#888" android:width="1px"/>
            <corners android:radius="3dp"/>
        </shape>
    </item>
    <item android:state_pressed="true">
        <shape>
            <solid android:color="#dddddd"></solid>
            <stroke android:color="#888" android:width="1px"/>
            <corners android:radius="3dp"/>
        </shape>
    </item>
</selector>
时间: 2024-08-03 08:11:24

android 有时候stroke不起作用的相关文章

Android layout文件中 &#39;?&#39; 的作用

在Android layout文件中,属性引用资源一般使用@,例如 android:textColor="@color/white" 但在一些系统文件中我们也可以看到有这样的写法 android:textColor="?android:color/textColor" 我们知道@是引用已经定义好的资源,如@color/white.@android:color/white,那 '?' 呢?下面是文档中的解释 Referencing style attributes A

Android布局中LinearLayout的android:layout_gravity=&quot;bottom&quot;不起作用

在做界面布局的时候,我们经常用到的就是LinearLayout,但是有时候用起来也不方便,比如我们在页面中要把一个Button放在屏幕底部,此时我们设置android:layout_gravity="bottom"是没有效果的.为什么呢?对于 LinearLayout: 当 android:orientation="vertical"  时, 只有水平方向的设置才起作用,垂直方向的设置不起作用.即:left,right,center_horizontal 是生效的.

Android的startActivityForResult不起作用

之前startActivityForResult一直用的好好的,今天发现怎么也不起作用.检查后发现有两点影响了. 1.android:launchMode="singleTask",main里设成单例了: 2.startActivityForResult的requestcode须要大于0才干够.

android 你的onfocuschangelistener和android:state_hovered为何不起作用

首先公布本人的测试结果,android里边除了edittext给它绑定onfocuschangelistener之后,会返回true,其他的组件一律没反应,除非你调用了requestfocus,但即使你调用了requestfocus以后,onfocuschangelistener依然会给你返回false,网上许多帖子对focus的问题都似是而非,于是本人决定从源码中找答案,找了半天只从textview里找到了一些蛛丝马迹: @Override public boolean onTouchEven

android Activity的启动模式 作用简析+demo详解

笔者近期做的一个项目用到了Activity的启动模式,也算是第一次深刻地领会到了其强大与方便.在此也是将自己所得与大家分享,自己写了一个比较简易的demo,便于让大家理解. 此篇博客意在让对启动模式不了解的开发者对其有一个较为形象的认识,至于深入探究,笔者还是推荐去看任玉刚前辈所写的<android开发艺术探索>了. 网上对Activity的启动模式讲解的博客有很多,但是大部分都需要掌握"栈"的知识,而且很多并不是那么通俗易懂.笔者打算独辟蹊径,一方面通过百度地图讲其作用,

Android Application.java以及其作用

What is Application Application和Activity,Service一样是android框架的一个系统组件,当android程序启动时系统会创建一个 application对象,用来存储系统的一些信息.通常我们是不需要指定一个Application的,这时系统会自动帮我们创建,如果需要创建自己 的Application,也很简单创建一个类继承 Application并在manifest的application标签中进行注册(只需要给Application标签增加个na

android中TypedValue.applyDimension()的作用

android TypedValue.applyDimension()的作用这个方法是转变为标准尺寸的一个函数,例如int size =(int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_SP, 20,context.getResources().getDisplayMetrics()); 这里COMPLEX_UNIT_SP是单位,20是数值,也就是20sp.

【转】Android APK的数字签名的作用和意义

1. 什么是数字签名? 数字签名就是为你的程序打上一种标记,来作为你自己的标识,当别人看到签名的时候会知道它是与你相关的 2. 为什么要数字签名? 最简单直接的回答: 系统要求的. Android系统要求每一个Android应用程序必须要经过数字签名才能够安装到系统中,也就是说如果一个Android应用程序没有经过数字签名,是没有办法安装到系统中的! Android通过数字签名来标识应用程序的作者和在应用程序之间建立信任关系,不是用来决定最终用户可以安装哪些应用程序. 这个数字签名由应用程序的作

android 中context的具体作用和意义

context在android中是非常重要的一个类,此类一般用于activity之中 从字面意思来看,这是环境变量,内部实现了一些方法,但是此类也可以看做是一个句柄,用来唯一标示activity 举个例子: context就是一只手,可以有很多行为,也可以操作很多工具,这只手的主人就是持有此context的activiy,这只手可以通过行为操作很多工具,就是用context来操作各个组件等等 所以,综上所述 context即是环境变量,内部有方法,也是句柄,用来标识activity