我只是尝试使用2个微调器创建一个简单的离线货币转换器。
我想使用微调器所选项目的值来制作“if”函数,如下所示
ArrayAdapter<CharSequence> isispinner = ArrayAdapter.createFromResource(this, R.array.nilai_item, android.R.layout.simple_spinner_item);
isispinner.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
spinner.setAdapter(isispinner);
spinner1.setAdapter(isispinner);
hitung.setOnClickListener(new View.OnClickListener() {
Object item1 = spinner.getSelectedItem();
Object item2 = spinner1.getSelectedItem();
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if ("IDR".equals(item1) && "USD".equals(item2)) {
ubahIDRtoUSD();
}
if ("USD".equals(item1) && "IDR".equals(item2)){
ubahUSDtoIDR();
}
}
});
}
它不起作用LOL ..我做错了还是我错过了某些东西XD ??
提前致谢:D
答案 0 :(得分:1)
我的猜测是,您尝试在选中之前获取所选项目(即在onClick()
方法之外。尝试这样:
@Override
public void onClick(View v) {
Object item1 = spinner.getSelectedItem();
Object item2 = spinner1.getSelectedItem();
// TODO Auto-generated method stub
if ("IDR".equals(item1) && "USD".equals(item2)) {
ubahIDRtoUSD();
}
if ("USD".equals(item1) && "IDR".equals(item2)){
ubahUSDtoIDR();
}
}
});
}
并且getSelectedItem()
方法不会返回String
afaik,因此将其与String
(“IRD”)进行比较是没有意义的。
顺便说一句,关于如何设置微调器有一个full tutorial。