在Android使用中,我们通常都是通过其id来获取相应控件的。
既然是通过id获取,那么如果出错,我们很自然需要考虑是否出现了id名称复用的情况。
例如上下文中出现同名id,或者id名称为系统保留字。
第一种情况:上下文中出现同名id
tv=(TextView) findViewById(R.id.contents); tv.setText(getResources().getString(R.string.content));
这里如果将TextView的id设置为content会出现类型不匹配的错误。原因是和strings.xml里面的长文本的id相同,系统则会不清楚你要找的到底是哪一个。
第二种情况:id名称为系统保留字
如果我创建类名是ProgressBar,然后要得到控件ProgressBar,类名冲突,IDE工具不知道它他应该给我一个控件,还是我自己创建的Activity,说以报错,说类型转换错误,不匹配。