【问题标题】:(Android Studio)Create textview based on the number of times a button is clicked(Android Studio)根据按钮被点击的次数创建textview
【发布时间】:2018-03-25 19:45:53
【问题描述】:

所以我想做的是根据单击按钮的次数创建一个 textView 和 editText。格式是这样的

enter image description here

我在这里想要做的是,每当单击“CLICK”按钮时,都应该添加一个新的 PlainText 和 Textview。我该怎么做?

【问题讨论】:

    标签: android android-layout button textview


    【解决方案1】:

    好吧,您必须以编程方式执行此操作,但具体如何执行这一切都取决于您的 XML 布局是如何定义的。我会建议这样的事情......

    public void addStuff(LinearLayout parentLayout){
            LinearLayout master = new LinearLayout(getActivity());
            master.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT));
            master.setWeightSum(2f);
            master.setOrientation(LinearLayout.HORIZONTAL);
            TextView textView = new TextView(getActivity());
            textView.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT, 1f));
            EditText editText = new EditText(getActivity());
            editText.setLayoutParams(new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT, 1f));
            master.addView(textView);
            master.addView(editText);
            parentLayout.addView(master);
        } 
    

    您需要根据您的布局获取您的 parentLayout。 LayoutParams 中的 1f 代表 layout_weights。 master的2f是一个权重总和。由于您将主布局设置为水平方向,因此 TextView 和 EditText 最终将位于同一行。由于 1f + 1f = 2f,这意味着 TextView 和 EditText 在同一行将具有相同的宽度。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-01
      • 2021-11-27
      相关资源
      最近更新 更多