如果这是一个愚蠢的问题,请提前抱歉!
我正在玩Android中的一些东西,我正在尝试在运行时更改元素,这些元素是在xml文件中指定的。
Button buttonSetup = (Button) findViewById(R.id.buttonSetup);
buttonSetup.setTextSize(40);
但是,我注意到如果您在之前进行更改,这会导致应用程序崩溃 -
setContentView(R.layout.main);
这是什么原因? (对不起,如果我错过了一些明显的东西!我认为我的大脑已经进入冬眠冬天!)
我原本以为在 setContentView之前更改元素是最好的做法,这样如果你改变了很多元素(比如说六个元素的六个左右属性),那就不是了用户在屏幕上更改内容时显而易见。
谢谢!
答案 0 :(得分:3)
简单回答:
通过调用setContentView
来夸大您的xml-Layout。
在你没有夸大它之前,Activity不知道XML。
您可以使用以下代码手动充气视图:
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout myLayout = (LinearLayout) inflater.inflate(R.layout.nameOfXML, null);
然后使用
将View设置为此膨胀布局setContentView(myLayout);