c#android将自定义视图添加到线性布局

时间:2016-09-14 02:08:20

标签: c# android android-layout dynamic customization

我使用 LinearLayout.AddView 添加简单视图。

我可以添加一些东西,比如textViews和editTexts,但是我需要在一个带有一些参数的块中一次添加4个元素。

这是我将动态添加的块。

Here is the block

这是一个有4个布局的区块,大一个水平,左一个垂直,两个右水平。

Layouts

这是这个

的AXML
mix run --no-halt

你可以想象我无法一个接一个地添加元素。每次用户需要时,他都应该能够迭代并添加更多这些块。

我不知道如果我这样做是正确的,因为即使我可以动态添加这个块,我怎么能在每个字段中检索信息呢?

由于

1 个答案:

答案 0 :(得分:1)

要动态添加视图,当执行导致添加的操作(例如按钮单击)时,请夸大布局并将其添加到父级。

示例:

button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            LayoutInflater layoutInflater = LayoutInflater.from(context);
            View view = layoutInflater.inflate(R.layout.layout_file, rootView);

            linearLayout.addView(view);
        }
});

但是,由于您希望能够访问所有这些文本字段中的输入,因此我建议您添加使用您提供的布局的自定义视图。然后,这可以提供对EditTexts输入的访问。将它们存储在List中,或者在以后迭代LinearLayout的子节点。