自定义控件问题,在布局里使用 android:visibility="gone" 无效,而且findviewbyid得不到该控件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自定义控件问题,在布局里使用 android:visibility="gone" 无效,而且findviewbyid得不到该控件相关的知识,希望对你有一定的参考价值。

不过模拟器里可以看到该控件,蛋疼。

如果,而且在Activity里通过 findViewById(R.id.xxx)获取不到控件

xml:
<com.tailfun.entity.Key
android:id="@+id/powerKey"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="30px"
android:layout_y="30px"
android:visibility="gone" />

activity:

Key powerKey=(Key) (findViewById(R.id.powerKey));

这里powerKey就是null,我没有写属性配置文件attr.xml,会是这个问题么?

参考技术A 这个是自定义的控件,自定义控件需要继承view或者layout,重写父类的方法,检查这个自定义控件是否符合要求,如果还不明白,发我邮箱 253249912@qq.com 参考技术B 检查下实例化了没有`没有的话再重新设下自定义控件..追问

Key powerKey=(Key) (findViewById(R.id.powerKey));

这句代码是在activity的oncreate里写的

追答

我知道在Oncreate里写的..那你的控件呢??那里是获取自定义控件~你创建控件在哪??

参考技术C 没有重写这个方法吧 Key(Context context, AttributeSet attrs) 参考技术D 构造函数种实例化没有呢?追问

哪个构造函数?

追答

重写Key(Context context, AttributeSet attrs) 这个构造方法啊!如果不行,那我也不知道勒!

本回答被提问者采纳

以上是关于自定义控件问题,在布局里使用 android:visibility="gone" 无效,而且findviewbyid得不到该控件的主要内容,如果未能解决你的问题,请参考以下文章

android布局文件里的ProgressBar长形进度条怎么自定义样式

MFC如何添加自定义控件

C# wpf 如何实现自定义控件,布局时,大小发生变化,内部绘制的曲线跟随变化?

为啥在android studio 布局中使用自定义控件就报错

为啥在android studio 布局中使用自定义控件就报错

自定义控件