我创建了一个自定义类CustomButton
,我在其中扩展了Button
类,并添加了一些额外的private
属性以及一些setter和getter。在另一项活动中,我想调用一个onClickListener()
,其中onClick
方法允许我访问这些方法,例如。
onClick(View v) {
v.getPropertyICreated();
//Then do something with that property
}
然而,在Eclipse中我似乎无法在我的视图上调用getProperty()。我假设View是参数,在这种情况下是按钮。
1)onClick的参数是什么视图?
2)我将来如何调试以查看视图的确切内容? (即我可以在Log.d(String arg,String arg)中的视图上调用什么方法,以便我可以看到它是什么类型的视图)
答案 0 :(得分:0)
视图v确实是您在其上设置onclicklistener的视图。我不知道方法getProperty()。如果将View转换为正确的类型(CustomButton或Button)并记录例如Button.getText(),则可以对此进行测试。
答案 1 :(得分:0)
为了访问您的方法,您首先需要将其强制转换为自己的类型,因为您的类型是Button
的子类,它是View
的子类:
onClick(View v) {
CustomButton myButton = (CustomButton) v;
myButton.getProperty();
...
}
答案 2 :(得分:0)
您需要将视图转换为自定义视图,例如:
onClick(View v) {
CustomButton customButton = (CustomButton) v;
customButton.getProperty();
}