带有编辑文本的Android动态表行

时间:2017-11-03 10:31:22

标签: android android-layout android-edittext

如何使用EditText创建动态表行,在哪个用户可以通过单击"添加更多"添加更多行。按钮,然后单击“删除”按钮删除行。

enter image description here

2 个答案:

答案 0 :(得分:0)

您需要使用arrayadapter实现listview。在添加按钮上,您必须向适配器添加新行,并通过调用notifyDataSetChanged()更新数组适配器,同时更新列表视图。这就是你将如何实现这一目标。

答案 1 :(得分:0)

您需要使用动态过程来创建新的表行。

我使用frameLayout。 这是创建新图像的示例(您必须适应您的项目 - 关于位置):

    TextView TEXTVIEW = new TextView(this);
        int ID_FOR_DINAMIC_TEXTVIEW = 10000 +  i ;
        TEXTVIEW.setId( ID_FOR_DINAMIC_TEXTVIEW );
        TEXTVIEW.setTextColor(Color.BLACK);
        TEXTVIEW.setTextSize(TypedValue.COMPLEX_UNIT_SP, 22);
        TEXTVIEW.setText(content_);
        TEXTVIEW.setX(EKRAN.WIDTH() / 100 * 9);
        TEXTVIEW.setY(EKRAN.HEIGHT() / 10 + EKRAN.HEIGHT() / 100 * 4 * i);
        xml_layout.addView(TEXTVIEW);

       // Toast.makeText( context_ ,  "GOOD" , Toast.LENGTH_SHORT).show();

奖金: 职位等级:

// def : SCREEN EKRAN = new SCREEN(context_);

//##############################################
// SCREEN - EKRAN CLASS
//##############################################
public class SCREEN  {

    DisplayMetrics dm = new DisplayMetrics();
    Point size_ = new Point();
    int width;
    int height;

    SCREEN (Context CONTEXT_) {

        dm = CONTEXT_.getResources().getDisplayMetrics();
        int densityDpi = dm.densityDpi;
        height = dm.heightPixels;
        width = dm.widthPixels;

    }

    public int WIDTH() {

        return width;

    }
    public int HEIGHT(){

        return height;

    }
    public int W( int PER_ ){

        return width/100*PER_;

    }
    public int H( int PER_   ){


        return height/100*PER_;

    }

    //////////////////
    //extras
    /////////////////
    public int GET_PIX_FROM_DP ( float DP_VALUE )
    {
        return (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, DP_VALUE , dm );
    }

    public int GET_PIX_FROM_DP2 ( float DP_VALUE )
    {
        float res = DP_VALUE * ( dm.ydpi / 160f);
        return  (int) res;
    }



}