我有这个:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
LinearLayout layout = (LinearLayout) View.inflate(this, R.layout.main, null);
setContentView(layout);
s = (Spinner) findViewById(R.id.spinner1);
抛出一个ClassCastException
为什么?
如果我做setContentView(R.layout.main)
一切顺利。但我需要在变量中使用布局,因为我需要它来使用广告库。有没有办法扩充XML并在变量中使用布局?
由于
答案 0 :(得分:1)
哪一行抛出ClassCastException?
此外,您可以使用setContentView(R.layout.main);
,然后仍然使用id调用的常规查找视图来获取对根布局的引用。
LinearLayout layout = (LinearLayout)findViewById(R.id.yourParentId);
只要在你调用setContentView()之后,你就会得到一个你可以使用的布局对象的引用。
答案 1 :(得分:1)
它会抛出异常的哪一行?也许布局的根视图不是真正的LinearLayout
。或者R.id.spinner1
可能不是Spinner
。