单击自定义适配器中的按钮后更改EditText值

时间:2017-01-24 17:21:33

标签: android

我在列表视图中有一个选项可以根据客户的需求更改项目数量。我将static Integer qty =1;声明为全局变量。当我点击" +"或" - "按钮,它确实在我将数量的值传递给下一个活动后更改数量的值。但EditText的文本没有改变。

这是我的CustomAdapter的一部分

holder.item_qty.setText(qty.toString());
    holder.Add.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            qty++;
            //I know I have to do something here
            //holder.item_qty.setText(qty.toString()); <-- DID NOT WORK


        }
    });

    holder.Sub.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if(qty>0)
            qty--;
            //I know I have to do something here
            ////holder.item_qty.setText(qty.toString()); <-- DID NOT WORK


        }
    });

编辑:我将static Integer qty =1;更改为Integer qty =1,因为每当我返回上一个活动时,数量仍为samme。所以我删除了静态以再次使qty = 1。

3 个答案:

答案 0 :(得分:0)

如果要将数据传递给其他活动,则应使用意图。

String string="this is a text";
Intent intent = new Intent(getBaseContext(), classname.class);
intent.putExtra(string, data);
startActivity(intent);

然后下一步是检索数据。

String s = getIntent().getStringExtra("EXTRA_SESSION_ID");

然后在编辑文字使用

中设置文本
editText.setText(s);

答案 1 :(得分:0)

您需要在EditText中设置文本,如下所示:

holder.item_qty.setText(qty.toString());
    holder.Add.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            qty++;
            //I know I have to do something here

           // inflate your textview here
           TextView tv = (TextView)v.findViewById(R.id.textView);
           tv.setText(qty.toString())
        }
    });

    holder.Sub.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if(qty>0)
            qty--;
            //I know I have to do something here

            // inflate your textview here
           TextView tv = (TextView)v.findViewById(R.id.textView);
           tv.setText(qty.toString())
        }
});

您需要从onClick()方法中收到的视图中获取当前TextView。

答案 2 :(得分:0)

<强>被修改

in onClickListener set text for editText Listener

holder.item_qty.setText(qty.toString());
    holder.Add.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            qty++;

            holder.item_qty.setText(""+qty);

        }
    });

    holder.Sub.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if(qty>0)
            qty--;
            holder.item_qty.setText(""+qty);


        }
    });