多单元转换器android应用程序



我正在设计一个多单元转换器应用程序。。。

为此,我创建了一个微调器,并将其值存储在数组中。然后是一个编辑文本,我们可以在其中放入数字

我想当我按下转换按钮时,它会从微调器中获取单位,如重量、货币等,无论用户选择什么,然后求解方程,如我选择重量类别并将任何值放在edittext中,它将这个值乘以2.205,并在extview中显示结果。

代码在这里

公共类spinnerdropdown扩展了AppCompatActivity{

TextView textView1;
CardView crdvspinner;
Spinner unitspinner;
EditText edtinputspinner;
Button convertbtnspinner;
TextView txtvresultspinner;
String[] unitarray= {"Currency","Weight","Liquid","Temperature","Area","Length"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_spinnerdropdown);
textView1= findViewById(R.id.textView1);
crdvspinner= findViewById(R.id.crdvspinner);
unitspinner= findViewById(R.id.unitspinner);
edtinputspinner= findViewById(R.id.edtinputspinner);
convertbtnspinner= findViewById(R.id.convertbtnspinner);
txtvresultspinner= findViewById(R.id.txtvresultspinner);
ArrayAdapter<String> adapter= new ArrayAdapter<String>(spinnerdropdown.this, android.R.layout.simple_spinner_item,unitarray);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
unitspinner.setAdapter(adapter);
unitspinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
String value= adapterView.getItemAtPosition(i).toString();
Toast.makeText(spinnerdropdown.this,value,Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
convertbtnspinner.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String firstvalue= edtinputspinner.getText().toString();
if (spinnerdropdown.this=="Weight"){
double kg= Double.parseDouble(firstvalue);
double pound= kg * 2.205;
txtvresultspinner.setText(""+pound);
}
}
});
}
}

您可以通过以下方式使value全局化来检查微调器中的所选项目:

public class spinnerdropdown extends AppCompatActivity {
//everything same 
//just add
String value= "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_spinnerdropdown);
//....as it is
ArrayAdapter<String> adapter= new ArrayAdapter<String>(spinnerdropdown.this, android.R.layout.simple_spinner_item,unitarray);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
unitspinner.setAdapter(adapter);
unitspinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
value= adapterView.getItemAtPosition(i).toString();//change here remove String
Toast.makeText(spinnerdropdown.this,value,Toast.LENGTH_SHORT).show();
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
convertbtnspinner.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//also you can check if user has not selected anything as
if(value.eqals("")){
Toast.makeText(spinnerdropdown.this,"Please select some data",Toast.LENGTH_SHORT).show();
return;
}
//use the value just added at top
if (value.equals("Weight")){
double kg= Double.parseDouble(firstvalue);
double pound= kg * 2.205;
txtvresultspinner.setText(""+pound);
}
}
});
}
}

最新更新