通过addContentView添加以XML定义的视图

时间:2017-01-06 18:51:07

标签: android android-view

我使用addContentView将子视图添加到我的主视图中,如下所示:

    TableLayout.LayoutParams tlp = new TableLayout.LayoutParams(
            TableLayout.LayoutParams.WRAP_CONTENT,
            TableLayout.LayoutParams.WRAP_CONTENT);

    Intent intent = getIntent();
    String message = intent.getStringExtra(MainActivity.EXTRA_NAME);
    TextView textView = new TextView(this);
    textView.setTextSize(40);
    textView.setText(message);

    addContentView(textView,tlp);

我可以在xml文件中定义视图,然后通过addContentView添加它,而不是像上面那样以编程方式定义视图吗?

谢谢!

3 个答案:

答案 0 :(得分:3)

  

我可以在xml文件中定义视图,然后通过它添加它   addContentView?

是的,首先使用返回View的{​​{3}}来膨胀xml文件。设置布局addContentView

后,将视图传递给LayoutParams
LayoutInflater inflater = getLayoutInflater();
View view;
view = inflater.inflate(R.layout.xml_file_name, null);
//.. add LayoutParams to view

// call addContentView
addContentView(view,tlp);

答案 1 :(得分:1)

您实际上可以使用类似

的内容
LayoutInflater.from(context).inflate(R.layout.your_xml_layout_file, this);

答案 2 :(得分:1)

您可以使用LayoutInflater:

从xml加载视图
LayoutInflater.from(context).inflate(R.layout.file, rootView, false);