-1

我想在单击按钮时增加文本的值。但是,我想增加一定数量的价值。我的初始值为 250,每次单击按钮时我都想将 textvalue 增加 250。

我已经为它编写了逻辑,但值增加了 1。

这是相关代码:

public class SelectCartListViewAdapter extends BaseAdapter{
    private Context mcontext;

    private static int counter = 250;
    private String stringVal;

    public SelectCartListViewAdapter(Context c){
        mcontext = c;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent) {

        //... some other code

        button.setOnClickListener(new OnClickListener() {
            @Override
            public void onClick(View v) {
              Log.d("src", "Increasing value...");
              counter++;
              stringVal = Integer.toString(counter);
              tv1.setText(stringVal);
            }
        });

        //...some other code

        return myView;
    }
}
4

3 回答 3

0

那是因为你在这里使用了增量运算符,

 counter++;

增量运算符只会将值增加一。

应该是这样的

counter= counter+actualValue;
于 2013-10-25T11:20:48.963 回答
0

试试这个

int counter=0, staticCounter=250;

@Override
            public void onClick(View v) {
            counter= counter+staticCounter;

                    tv1.setText(String.valueOf(counter));
}
于 2013-10-25T11:28:20.027 回答
-1

用下面的代码片段替换您的部分代码。

 ImageButton button = (ImageButton)myView.findViewById(R.id.addbutton);
        button.setOnClickListener(new OnClickListener() {

            //private int _counter;

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub


                //Toast.makeText(mcontext,"Button is clicked",Toast.LENGTH_SHORT).show();
                 Log.d("src", "Increasing value...");
                 counter+=250;
                    stringVal = Integer.toString(counter);
                    tv1.setText(stringVal);


//              int value = (Integer.parseInt((String) tv1.getText()))+250;
//              tv1.setText(value);

            }
        });
于 2013-10-25T11:21:17.850 回答