我需要编辑一个xml文件,问题是我有多个xml,并且在我所有的类/活动中,我无法将xml作为主视图。Android XML原始访问
因此,我必须使用xml文件,而不将它设置为任何活动的主视图。甚至有可能吗?
我的意思是我可以:查看j =(查看)findViewById(R.layout.mytest);
但是,如何在mytest.xml文件中编辑ex的按钮文本?
我需要编辑一个xml文件,问题是我有多个xml,并且在我所有的类/活动中,我无法将xml作为主视图。Android XML原始访问
因此,我必须使用xml文件,而不将它设置为任何活动的主视图。甚至有可能吗?
我的意思是我可以:查看j =(查看)findViewById(R.layout.mytest);
但是,如何在mytest.xml文件中编辑ex的按钮文本?
尽管您可以使用LayoutInflator
来膨胀任何布局,并对该实例进行任何更改,但是您无法在布局中查找持久性更改。所以首先setContentView
,然后只改变该视图。
所以你说你想动态编辑布局XML文件???例如,你有一个像...
<LinearLayout>
...
<Button
android:id="@+id/myButton"
...
android:text="Some text" />
</LinearLayout>
...并且你想在运行时动态编辑android:text="Some text"
如果是这样,那不是这样做的。只需将android:text
属性保留在布局xml中,并在运行时设置按钮的文本即可。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContenView(R.layout.mytest);
Button btn = (Button) findViewById(R.id.myButton);
btn.setText("Whatever");
}
我不确定是否正确理解问题。但是,也许[LayoutInfater](http://developer.android.com/reference/android/view/LayoutInflater.html)是你正在寻找的。看看这个[SO问题](http://stackoverflow.com/questions/3477422/layout-inflater-in-android)。 – Piotr