使用相同的xml扩展2个视图:第二个视图包含第一个视图的属性

时间:2014-03-27 09:23:52

标签: android android-button layout-inflater

更改第一个视图的TextView文本时,第二个视图的textView文本显示两个TextView的文本,一个在另一个上面。

MainActivity.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    FrameLayout rl=(FrameLayout) findViewById(R.id.mainLayout);

    View v1=LayoutInflater.from(this).inflate(R.layout.text_view, null);
    View v2=LayoutInflater.from(this).inflate(R.layout.text_view, null);

    TextView myTextView1= (TextView) v1.findViewById(R.id.myTextView);
    TextView myTextView2= (TextView) v2.findViewById(R.id.myTextView);

    myTextView1.setText("str1");
    myTextView2.setText("str2");


    rl.addView(v1);
    rl.addView(v2);









}

2 个答案:

答案 0 :(得分:0)

我猜这个问题是因为你使用的是framelayout,所以子视图会重叠。例如,如果您将framelayout切换为线性布局,我想根据文本视图,结果将如您所期望的那样。

答案 1 :(得分:0)

非常简单.. 1.您必须在第二个textview中使用 append 属性而不是settext 第二,你可以使用额外的东西来传递意图或使用像

这样的getter setter方法
public static void setstr_name(String str_name) {
        GlobalVariable.str_name = str_name;
    }

    public static String getstr_name() {
        return str_name;
    }