所以我正在做一个Android应用,我通过以下方式将一个标签添加到视图中:
view.setTag(1,myClass);
现在我希望通过这个获得该标记:
myClass = view.getTag(1);
但它说:
无法使用的类型
必需:MyClass
找到:java.lang.Object
是的,我之前宣布了myClass ......
那么,我怎样才能让MyClass能够从一个对象“创建”或“分配”?比如字符串和整数。
提前致谢。
答案 0 :(得分:0)
简单地施展它。
myClass = (MyClass) view.getTag(1);
答案 1 :(得分:0)
您可以看到here getTag(int i)
的返回类型为Object
。一种选择是将返回的对象强制转换为您期望的类型。
Object obj = view.getTag(1);
if(obj instanceOf MyClass){
MyClass myClass = (MyClass) obj;
}
但是,如果您只需要存储类类型,则以下内容会更有趣:
MyClass myInstance = new MyClass();
view.setTag(1, myInstance);
Class type = view.getTag(1).getClass();