文档章节

Android include的一点常见错误

东西南瓜西葫芦
 东西南瓜西葫芦
发布于 2015/06/12 17:54
字数 250
阅读 16
收藏 0

废话不说,以下是在用include的时候遇到的一点问题,顺便整理了一下

1、在一个布局同时include两次同一个布局时,第二个include的控件的点击响应事件无效的时候

    布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/xuan"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|center_horizontal"
    android:gravity="center_vertical|center_horizontal"
    android:orientation="vertical" >

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="111"/>

    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="222"/>

</LinearLayout>

    include引用

        <include
               android:id="@+id/one"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               layout="@layout/xuan" />
        <include
               android:id="@+id/two"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               layout="@layout/xuan" />

    //java

        LinearLayout one = (LinearLayout) findViewById(R.id.one);
	LinearLayout two= (LinearLayout) findViewById(R.id.two);
	//
	Button button1,button2,button3,button4;
	button1= (Button) one.findViewById(R.id.button1);
	button2 = (Button) one.findViewById(R.id.button2);
	button3 = (Button) two.findViewById(R.id.button1);
	button4 = (Button) two.findViewById(R.id.button2);

    如果使用一个include时,可以直接find,效果一样

Button button = (Button) findViewById(R.id.button1);

2、Caused by: java.lang.ClassCastException: android.widget.LinearLayout cannot be cast to android.widget.Button

报这个错时,看看include是否加了width,height

© 著作权归作者所有

共有 人打赏支持
东西南瓜西葫芦
粉丝 1
博文 23
码字总数 7490
作品 0
临沂
程序员
android点滴7:adb不是内部或外部命令,也不是可运行的程序或批量文件

adb不是内部或外部命令,也不是可运行的程序或批量文件。 当用cmd命令运行adb时如果提示此错误,说明环境变量设置不正确。值得注意的一点是把adb.exe的文件位置加入到path中时一定要加在and...

独鸣在彼岸
2012/05/11
0
0
android include merge标签

include和merge标记的作用主要是为了解决layout的重用问题。 比如我们有三四个Activity但是他们都要用到同一个样式的标题栏,虽然我们把一样的代码copy个三四遍也没关系,但实在是太丑了,而...

卐字旗下的余晖
2014/05/28
0
0
开源中国 OsChina Android 客户端源码分析(2)滑动菜单DrawerLayout

1滑动菜单oschina使用了android.support.v4.widget.DrawerLayout,之前没有用过这个控件,百度了下,大致了解如下: 1.1类似与LinearLayout,就是一个布局控件。 1.2使用时,其有两部分组成,...

姬鑫
2015/05/20
0
3
Build x264&FFmpeg for Android

最近在想办法把Android WebRTC上的视频流录制下来。于是不得不用到FFmpeg(再于是还得加上x264) 用git把ffmpeg(我用的github上FFmpeg-Android)和x264(vlc的官方git)分别都clone下来。 在x26...

mingkaidox
2013/10/04
0
0
不要在为唯一的port号烦恼了

老式的写法: ServerSocket srv = new ServerSocket(portNumber) 与时俱进的例子: (那也是相对于2008年了) ServerSocket srv = new LocalServerSocket("a.b.c"); 参数其实随便什么string都...

Q_J
2015/05/27
0
0

没有更多内容

加载失败,请刷新页面

加载更多

IOasd

能够使用FileUtils常用方法操作文件 字符流体系介绍 : 在 IO 开发中, 我们传输最频繁的数据为字符, 而以字节的方式来传输字符数据会使程序员丧失对数据内容的判断.因为程序员只认识字符, 不认...

码农屌丝
27分钟前
0
0
创建第一个react项目

sudo npm i -g create-react-app@1.5.2 create-react-app react-app cd react-apprm -rf package-lock.jsonrm -rf node_modules #主要是为了避免报错npm installnpm start......

lilugirl
今天
3
0
在浏览器中进行深度学习:TensorFlow.js (八)生成对抗网络 (GAN)

Generative Adversarial Network 是深度学习中非常有趣的一种方法。GAN最早源自Ian Goodfellow的这篇论文。LeCun对GAN给出了极高的评价: “There are many interesting recent development...

naughty
今天
0
0
搬瓦工镜像站bwh1.net被DNS污染,国内打不开搬瓦工官网

今天下午(2018年10月17日),继搬瓦工主域名bandwagonhost.com被污染后,这个国内的镜像地址bwh1.net也被墙了。那么目前应该怎么访问搬瓦工官网呢? 消息来源:搬瓦工优惠网->搬瓦工镜像站b...

flyzy2005
今天
9
0
SpringBoot自动配置

本篇介绍下,如何通过springboot的自动配置,将公司项目内的依赖jar,不需要扫描路径,依赖jar的情况下,就能将jar内配置了@configuration注解的类,创建到IOC里面 介绍下开发环境 JDK版本1.8 spr...

贺小五
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部