在Android中,我有一个A类,它扩展了B类,扩展了ActionBarActivity。 A类设置内容视图。出于某种原因,我无法访问类B中的视图元素。如何访问视图元素(例如:TextView)?当我尝试在B类中使用findViewById时,它总是为空。
public class A extends B {
@Override
protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.activity_main);
super.onCreate(savedInstanceState);
}
}
public class B extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView myTextView = (TextView) findViewById(R.id.myTextView);
// myTextView is null
}
}
答案 0 :(得分:1)
你向后继承事物。 B类没有setContentView。
我认为这就是你想要的:
public class A extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.activity_main);
super.onCreate(savedInstanceState);
}
}
public class B extends A {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// A called setContentView(), so now we can find views by id.
TextView myTextView = (TextView) findViewById(R.id.myTextView);
// myTextView now is not null.