将值传递给android中的spinner时出现无效的int错误

时间:2014-10-17 07:38:38

标签: android android-spinner

在我的项目中,我使用的是数值为50,100的微调器。我使用strings.xml将值传递给微调器。我怎样才能将此微调器值作为整数。我使用下面的代码,但它给出了无效的int错误。 这是我的代码

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.reload_newvalue);

        SpnTopupValue=(Spinner) findViewById(R.id.spinner2);
        btnBUY=(Button) findViewById(R.id.btnBuy);

        Thelper=new TransactionDBAdapter(this);
        i=new Intent(this,ReloadHistory.class);

        ArrayAdapter Tadapter=ArrayAdapter.createFromResource(this, R.array.Topupvalue, android.R.layout.simple_spinner_item);
        SpnTopupValue.setAdapter(Tadapter);     

        btnBUY.setOnClickListener(new OnClickListener(){    
                @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                Transaction tran=new Transaction();                 
                int TopupValue =Integer.parseInt(SpnTopupValue.getContext().toString());            

                tran.setTran_cardno(RegCardNo);
                tran.setTran_cardname(RegcardName);          
                tran.setTran_topupval(TopupValue);   
                Thelper.open();         
                Thelper.ReloadNewCard(tran);           
                startActivity(i);   
            }           
        });
    }
}

字符串数组

<array name="Topupvalue">
    <item>50</item>
    <item>100</item>
    </array>

1 个答案:

答案 0 :(得分:0)

尝试更改,

int TopupValue =Integer.parseInt(SpnTopupValue.getContext().toString());

要,

int TopupValue =Integer.parseInt(SpnTopupValue.getSelectedItem().toString().trim());

希望它有所帮助!