调用布局View的performClick()方法
修改之前的xml片段。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_deletesms"
android:clickable="true"
android:padding="0dip"
android:background="@drawable/sms_dialog_button"
android:layout_width="50dip"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/deleteSms"
android:layout_centerInParent="true"
android:src="@drawable/sms_delete"
android:scaleType="centerInside"
android:focusable="false" // 仅仅这样设置无法实现所需效果。
android:background="#00000000"
android:layout_width="30dip"
android:layout_height="30dip"/>
</RelativeLayout>
实现效果:点击ImageView时,ImageView的容器对象RelativeLayout,也有被点击的效果出现。
这里,布局被点击时的效果是,切换不同的drawable图片。
在xml布局文件中,无论怎么改都达不到效果。
最后采取在代码中实现。当点击ImageView时,调用布局View的performClick()方法。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_deletesms"
android:clickable="true"
android:padding="0dip"
android:background="@drawable/sms_dialog_button"
android:layout_width="50dip"
android:layout_height="match_parent" >
<ImageView
android:id="@+id/deleteSms"
android:layout_centerInParent="true"
android:src="@drawable/sms_delete"
android:scaleType="centerInside"
android:background="#00000000"
android:layout_width="30dip"
android:layout_height="30dip"/>
</RelativeLayout>
mLayoutDelsms = (RelativeLayout) findViewById(R.id.layout_deletesms);
case R.id.deleteSms:
mLayoutDelsms.performClick();
调用布局View的performClick()方法的更多相关文章
- loadView不需要调用super view,原因:loadView方法的作用就是自定义view.[super loadView]会耗性能.
https://www.evernote.com/shard/s227/sh/423fd81d-ab1c-4e6c-997d-39359472a4a5/f220ade8bd9be149ad70 ...
- [iOS]为什么不要在init初始化方法里调用self.view
首先.如果你调用self.view的时候,就会调用view的getter方法, 这个时候,view是空的,那么系统就会自动给你创建一个view,然后就会触发ViewDidLoad方法.那么这个时候,如 ...
- ASP.NET MVC4在View中调用当前Controller中的方法
调用当前Controller中的方法 @{ ((HomeController)ViewContext.Controller).Method1(); } 调用静态方法 @{ SomeClass.Meth ...
- Android自定义View的实现方法,带你一步步深入了解View(四)
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17357967 不知不觉中,带你一步步深入了解View系列的文章已经写到第四篇了,回 ...
- View (五)自定义View的实现方法
一些接触Android不久的朋友对自定义View都有一丝畏惧感,总感觉这是一个比较高级的技术,但其实自定义View并不复杂,有时候只需要简单几行代码就可以完成了. 如果说要按类型来划分的话,自定义Vi ...
- 【转】Android自定义View的实现方法,带你一步步深入了解View(四)
原文网址: 转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/17357967 不知不觉中,带你一步步深入了解View系列的文章已经写到 ...
- 对View的onMeasure()方法的进一步研究
在Android开发中,很多人对自定义View是望而生畏,但这又是向高级进阶的必经之路,主要是对View里面的很多方法不知道怎么理解,其中一个就是onMeasure()方法. 首先,我自定义一个MyV ...
- 108.UIView关于布局和约束的方法(AutoLayout)
http://blog.csdn.net/wangyanchang21/article/details/52270136 关于布局(UIViewHierarchy) 1.layoutSubviews ...
- 解析6种常用View 的滑动方法
View 的滑动是Android 实现自定义控件的基础,实现View 滑动有很多种方法,在这里主要讲解6 种滑动方法,分别是layout().offsetLeftAndRight()与offsetTo ...
随机推荐
- 计算机中的概念: 视图 VS 镜像
这两个概念还是不太一样的.下面来说说个人的理解,记录一下. 1. 镜像 镜像可以理解为一份完全一样的拷贝.也就是"深度拷贝",一个复制品. 比如 iso映像文件,ubuntu-12 ...
- JS 父页面调子页面(2种情况),子掉父级(1种)(转)
A :父级调用子级页面 ,非IFRAME情况,类似平级: window.open("子页面.html", "", "width=1024,height ...
- 微信公众号网页授权获取用户openid
最近一个项目是在微信公众号内二次开发,涉及到微信公众号支付,根据文档要求想要支付就必须要获取到用户的openid. 这是微信官方文档https://mp.weixin.qq.com/wiki?t=re ...
- 大数据开发实战:Hive优化实战2-大表join小表优化
4.大表join小表优化 和join相关的优化主要分为mapjoin可以解决的优化(即大表join小表)和mapjoin无法解决的优化(即大表join大表),前者相对容易解决,后者较难,比较麻烦. 首 ...
- mono touch登录设计
需要对MonoTouch.Dialog-1进行引用: using System; using System.Collections.Generic; using System.Linq; using ...
- VS2010自带的性能分析工具分析.NET程序的性能
这篇博文给大家分享的是,如何使用VS自带的性能分析工具来分析我们编写的.NET程序,一边找出程序性能的瓶颈,改善代码的质量.在实际开发中,性能真的很重要,往往决定一个产品的生死~良好的用户体验的基础之 ...
- Centos下修改hostname
之前安装Centos时候,没有怎么注意,将自己的名字设置为hostname,总感觉好别扭,很不习惯,如是就想把hostname改一下,用到hostname命令. 首先用hostname命令查看当前的主 ...
- Eclipse CDT 插件列表
http://www.bestplugins.com/software/eclipse-c-plugin.html
- How to Build a Search Page with Elasticsearch and .NET
Although SQL Server's Full-Text search is good for searching text that is within a database, there a ...
- Windows上Boost的编译步骤
一.FQ下载Boost最新版本 官网:http://www.boost.org/ 假设解压到:D:\Applicaton\DevTools\boost\boost_1_65_1 二.使用VS编译器 c ...