Android:图像按钮或按钮在按下时突出显示效果

2023-12-05

当我按下这些时left and right arrow button当时我想在按钮上看到这些类型的效果。同样的事情发生在Iphone/IOS默认情况下。

我可以做出这种效果吗?

在这里我提到了我想要的图片。

enter image description here

在这里我使用了这个 xml 文件但没有成功。

按钮_pressed.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:state_pressed="true"><shape>
            <gradient android:angle="180" android:centerColor="#657377" android:endColor="#AFFFFFFF" android:startColor="#FFFFFFFF" android:type="linear"/>

            <corners android:radius="10dp" />
        </shape></item>

</selector>

EDIT

我用了android:background="@drawable/button_pressed.xml"线,但我没有得到我想要的。

Tried :

我按照 Piyush 的答案使用了这个 xml 文件,但我没有成功,但我得到了这个效果。

<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >

    <item>
        <shape android:shape="rectangle" >
            <solid android:color="@color/transparent" />
        </shape>
    </item>
    <item>
        <shape
            android:innerRadiusRatio="4"
            android:shape="ring"
            android:thicknessRatio="9"
            android:useLevel="false" >
            <gradient
                android:endColor="#00000000"
                android:gradientRadius="250"
                android:startColor="#ffffffff"
                android:type="radial" />
        </shape>
    </item>

</layer-list>

我同意顶部和底部的切割,因为我的按钮布局空间有限。我们稍后会想到,但为什么它没有像阴影和阿尔法那样生效以及我提到的所有这些?

OUTPUT : enter image description here

如果有人对此有任何想法,请帮助我。

提前致谢。


形状必须呈放射状绘制,并从白色向外渐变为黑色。

尝试这个:

<shape
    xmlns:android="http://schemas.android.com/apk/res/android">
    <gradient
        android:startColor="#ffffffff"
        android:endColor="#00000000"
        android:gradientRadius="100"
        android:type="radial"/>
</shape>

此外,您不能直接将其设置为按钮的背景。您必须创建一个选择器可绘制文件,在其中根据按钮的状态指定不同的背景。在这种情况下,您需要仅在按下按钮时设置背景。选择器看起来像这样:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true" android:drawable="@drawable/button_pressed"/> 
    <item android:state_selected="true" android:drawable="@drawable/button_pressed"/>
    <item android:state_focussed="true" android:drawable="@drawable/button_pressed"/>
    <item android:drawable="@android:color/transparent" />
</selector>

PS:不建议在设计Android应用程序时复制iOS设计。 Android设计指南请参考:http://developer.android.com/design/building-blocks/buttons.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android:图像按钮或按钮在按下时突出显示效果 的相关文章

  • 使用root清除状态栏通知

    我目前正在开发一个应用程序 使用无障碍服务来处理通知 特别烦人的是第三方应用无法清除状态栏通知 除了启动链接到通知的意图 并启动应用程序 我寻找了很长时间的方法使用 root 关闭通知或清除完整列表 但我失败了 我想我记得我看到过一个应用程
  • 在phonegap中播放本地声音

    我有一个 wav文件在我的www文件夹 我正在使用 jQuery 和以下代码 警报响起 但声音不播放 难道我做错了什么
  • fresco 的 Proguard 错误

    我正在使用 ProGuard 当我在发布配置中运行项目时 出现以下错误 Warning com facebook imagepipeline bitmaps DalvikBitmapFactory can t find referenced
  • Android 构建 gradle 在特定设备上失败

    我面临一个奇怪的问题 当我编译我的应用程序以在 Android 7 0 的设备上运行它时 它可以工作 但是当我尝试为 Android 4 2 1 的设备进行编译时 它会失败并出现以下错误 错误 任务 app transformClasses
  • 如何从静态快捷方式启动活动的现有实例

    我的应用程序中有一个活动 MainActivity 并且有一个静态快捷方式 指向 TempActivity 由于静态快捷方式将始终设置 FLAG ACTIVITY NEW TASK 和 FLAG ACTIVITY CLEAR TASK 因此
  • PhoneGap 是应用程序开发的好选择吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Android,语言文件不起作用

    我现在正在创建一个 Android 应用程序 并尝试为我的母语添加语言文件 但在某种程度上 这对我不起作用 我尝试在两部不同的手机中加载该应用程序 但结果相同 之前创建过语言文件 效果良好 但这次不行 手机设置为瑞典语 语言文件适用于我创建
  • 将寻呼机视为列表视图行项目

    我有一个包含 20 行的列表视图 我想为列表视图中的每一行设置一个视图寻呼机 由于列表视图的行中的项目可能是一个或多个 并且我想使用视图分页器显示列表视图行项目 为此 我使用以下代码 将显示在列表视图行中的自定义布局 作为分页器项目
  • 注销时Firebase facebook按钮android身份验证

    我在我的 Android 应用程序中使用 firebase 并在 facebook SDK 中使用登录 我面临的唯一问题是 当我使用 facebook 登录然后注销时 facebook 登录按钮处于 注销 状态 当我单击它时 它会询问我是否
  • 使用 POST 将数据从 Android 发送到 AppEngine Datastore

    抱歉 如果这是一个简单的问题 但我只是不知道我应该做什么 而且我认为我有点超出了我的深度 我想将数据从 Android 应用程序发送到在 Google App Engine 上运行的应用程序 数据必须从那里写入数据存储区 我的数据主要采用对
  • 将搜索结果更新为 Android 中的 Lazy Adapter

    我有项目列表 想为其实现搜索功能 因此 我有一个带有 addTextChangedListener 的文本框 搜索结果运行良好 但当我尝试将结果设置为 ListView 时 新结果将附加到旧结果中 我正在使用惰性适配器 如何清除适配器中的旧
  • BluetoothLeScanner 服务内部问题

    Update从Android 10以上我认为你需要ACCESS BACKGROUND LOCATION权限 因此 如果此代码在最新的 Android 版本上不起作用 就是针对此问题的 ACCESS BACKGROUND LOCATION 受
  • ImageButton 拉伸背景图像

    我正在尝试创建一个没有边框的 ImageButton 但遇到了图像按钮大小的问题 我使用 Eclipse ADT 将 ImageButton 拖到布局中并选择背景图像 图像按钮显示如下 正如您所看到的 背景图像和图像按钮周边之间有一个边框
  • NoClassDefFoundError:com.google.firebase.FirebaseOptions

    我继续得到NoClassDefFoundError在我正在使用的其他测试设备 4 4 2 上 但在我的测试设备 Android 5 1 上运行良好 我尝试了用谷歌搜索的解决方案 但似乎没有任何效果 我正在使用 Firebase 实时数据库
  • 在Android的activity中调用onResume

    在活动的过程中通过调用 this OnResume 强制 onResume 事件可以吗 或者我应该实现另一个由 OnResume 和第一个成员调用的过程 实现在您的重写中调用的另一个过程onResume 后者不打算由您调用 它是一种方便的方
  • Android 将菜单项在操作栏中向左对齐

    我的应用程序中有一个操作栏 它显示我定义的菜单项res menu activity main xml 我的菜单项在操作栏上向右对齐 我希望它们左对齐 我为此找到的唯一解决方案使用了自定义操作栏 如下所示 将菜单项放置在 Honeycomb
  • 如何在 Bootstrap 3 中制作进度条动画?

    我正在尝试为 Bootstrap 进度条设置动画 但我不知道该怎么做 我得到了宽度的值但是console log bar width 返回宽度px但不是 如内联所示style width 90 我用代码重新创建了一个 bootply Boo
  • 找不到资源矢量绘图的异常

    我将在某些设备上运行我的应用程序 其崩溃日志如下 01 04 16 54 02 206 7466 7466 com lawnmowers E AndroidRuntime FATAL EXCEPTION main Process com l
  • 协程和 Firebase:如何实现类似 Javascript 的 Promise.all()

    在 Javascript 中 您可以同时启动两个 或更多 异步任务 等待它们完成 然后执行某些操作 继续 const firstReturn secondReturn await Promise all firstPromise secon
  • 使用 eclipse 配置mockito 时出现问题。给出错误:java.lang.verifyError

    当我将我的mockito库添加到类路径中 并使用一个简单的mockito示例进行测试时 我尝试使用模拟对象为函数add返回错误的值 我得到java lang verifyerror 以下是用于测试的代码 后面是 logcat Test pu

随机推荐

  • 我更新了 Android Studio,现在 gradle 项目同步失败

    我更新了 Android Studio 现在出现以下错误 1 Gradle项目同步失败 基本功能 例如编辑 调试 将无法正常工作 2 无法通过代理建立隧道 代理返回 HTTP 1 1 403 请求被 Privoxy 阻止 我在 gradle
  • 当参数是列表时,惰性求值如何工作?

    根据我的理解 惰性求值是指参数在传递给函数之前不求值 而是仅在实际使用它们的值时才求值 但在 haskell 教程中 我看到了一个例子 xs 1 2 3 4 5 6 7 8 doubleMe doubleMe doubleMe xs 作者说
  • WordPress 博客 iPhone 应用程序阅读器 [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我有一个 WordPress 博客 有点像当天交易的报价 我希望制作一个简单的 iPhone 应用程序来自动下载博客内容 想想 RSS 类似 我希望我的读者能够保存他们最喜欢的帖子
  • 如何从工作室中排除support v4库?

    失败 构建失败并出现异常 What went wrong Execution failed for task transformClassesWithJarMergingForDebug com android build api tran
  • 如何隐藏 Powershell GUI 上的选项卡?

    好的 我创建了一个 powershell 脚本 我试图使主界面使用选项卡式布局 我获得了我想要的所有功能 除了我想隐藏顶部的选项卡并使用侧面的按钮来切换选项卡 我已经成功地在侧面设置了按钮来选择不同的选项卡 但我不知道如何隐藏顶部的选项卡
  • 解释 SPAN_EXCLUSIVE_EXCLUSIVE 等 Span 标志的含义

    有人可以用例子清楚地解释一下每个跨度标志 like SPAN EXCLUSIVE EXCLUSIVE and SPAN MARK MARK是什么意思以及何时使用什么标志 我不明白官方文档说 类型跨度SPAN EXCLUSIVE EXCLUS
  • 无法在 Fragment 中保留 SupportMapFragment

    我有一个带有导航抽屉的应用程序 其中包含 Google 地图片段和其他一些片段 我正在创建SupportMapFragment以编程方式并将其放入我的自定义中fragment map地图容器中的布局 问题是我必须添加超过2000 标记从数据
  • Java ConcurrentHashMap 和 foreach 循环

    假设我有以下内容ConcurrentHashMap ConcurrentHashMap
  • 检查输入是否等于数组中存在的值?

    我想检查一下是否input等于数组中的任何选项 我该怎么做 我可以在不使用大量的情况下做到这一点吗 运营商 check if any input in herp was entered string input string herp 2
  • 将 localDateTime 字符串正确解析为 spring boot @pathVariable

    我正在尝试获取带有时间戳的用户的所有数据 GetMapping datum userID timeStamp List
  • 从没有 get() 方法的 AsyncTask 返回值

    我试图从 DoInBackground 中的 asynctask 返回值 但调用 get 方法会冻结我的 UI 如何将代码重写为回调方法 public class GetUrlDataTask extends AsyncTask
  • 如何验证时间戳?

    我的应用程序接受这样的字符串 2002 10 15 10 55 01 000000 我需要验证该字符串对于 db2 时间戳是否有效 我怎样才能做到这一点 编辑 这大部分有效 public static boolean isTimeStamp
  • 使用 Polymer 扩展原生 HTML 元素

    您好 我想使用 Polymer 从本机 HTML 元素进行扩展 以创建自定义 Web 组件 当我不延伸时 我的聚合物就绪回调被调用 一旦我延长 就不再有人打电话了 虽然正在创建元素的影子 DOM 这是我的用法代码
  • 使用 JDBC 的 NLS_DATE_FORMAT

    我尝试在jdbc中设置NLS DATE FORMAT 但似乎没有任何效果 我的代码 Connection conn ods getConnection Statement stat conn createStatement stat exe
  • 尝试创建多个 JLabel,但只出现一个

    我正在尝试创建多个相同形式的 JLabel 然后尝试将它们添加到同一个 JPanel 中 然而 只出现了一个 JLabels 我不明白为什么 这是我写的代码 final JPanel labelPanel new JPanel new Bo
  • API 响应显示带有 PUT/PATCH 请求的过时数据

    我正在使用 Django REST 框架开发 API 就我而言 我使用嵌套序列化器 所以我需要覆盖 update method 这是所需的描述 序列化器 配置串行器 class DeviceConfigSerializer serializ
  • 在 Linux 中的 jvm 中查找硬和软打开文件限制(ulimit -n 和 ulimit -Hn)

    我有一个问题 我需要从 java groovy 程序中找出 Linux 中进程的硬打开和软打开文件限制 当我从终端执行 ulimit 时 它会给出硬打开文件限制和软打开文件限制的单独值 ulimit n 1024 ulimit Hn 409
  • Firebase 云消息传递:FCM 令牌过期

    据我所知 如果发生以下情况之一 FCM 令牌会自行更新 应用程序删除实例ID 该应用程序已在新设备上恢复 用户卸载 重新安装应用程序 用户清除应用程序数据 App端可以使用以下方法来监控Token更新 监控代币生成 每当生成新令牌时都会触发
  • 有没有什么不显眼的方法来挂钩 jQuery 方法的触发器?

    我想知道是否有任何不显眼的方法来挂钩 attr data css 等方法并调用自定义触发器 理想情况下 我可以做这样的事情 friend a bind attr changed changed data function e alert T
  • Android:图像按钮或按钮在按下时突出显示效果

    当我按下这些时left and right arrow button当时我想在按钮上看到这些类型的效果 同样的事情发生在Iphone IOS默认情况下 我可以做出这种效果吗 在这里我提到了我想要的图片 在这里我使用了这个 xml 文件但没有