java - 让微调器显示他们选择的内容

标签 java android arrays spinner

我的spinner可以工作,但我想知道用户在单击我设置的确认按钮之前选择了什么。我猜测类似将 spinners 设置为 variable 这样我就可以在任何地方使用它们,因为到目前为止它们只能在主体中使用。任何帮助将不胜感激

public class Calculate extends Activity implements View.OnClickListener
{    
   int number = 0;
    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.calculate);

        Spinner spinner1 = (Spinner) findViewById(R.id.hemsSpinner);
        Spinner spinner2 = (Spinner) findViewById(R.id.materialSpinner);

        Button butn1 = (Button) findViewById(R.id.calculateButton);
        butn1.setOnClickListener(this);


    // Selection of the spinner
    // Application of the Array to the Spinner

    ArrayAdapter<String> spinnerArrayAdapter1 = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,Hems.Hem);
    spinnerArrayAdapter1.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // The drop down view
    spinner1.setAdapter(spinnerArrayAdapter1);

    ArrayAdapter<String> spinnerArrayAdapter2 = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item,Material.Material);
    spinnerArrayAdapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinner2.setAdapter(spinnerArrayAdapter2);


    EditText qty = (EditText)findViewById(R.id.qtyEditText);
    double quantity = qty.getId();

    EditText H = (EditText)findViewById(R.id.heightEditText);
    double hight = H.getId();

    EditText W = (EditText)findViewById(R.id.widthEditText);
    double width = W.getId();


    }
    @Override
    public void onClick(View v) 
    {


        if(Calculate.spinner1.equals(Hems.Hem[0]))
        {
            number = 0;
        }
        else if (spinner1.equals(Hems.Hem[1]))
            {
            number = 1;
            }
        else if (spinner1.equals(Hems.Hem[2]))
        {
            number = 2;
        }
        else if (spinner1.equals(Hems.Hem[3]))
        {
            number = 3;
        }


        if (v.getId() == R.id.calculateButton)
        {
        TextView text = (TextView)findViewById(R.id.textView1);
        text.setText(Hems.Hem[number]);

        TextView dude = (TextView)findViewById(R.id.textView2);
        dude.setText((int) Hems.hemPrice[number]);
        }
    }
 }

最佳答案

试试这个

将您的微调器声明为字段

  Spinner spinner1,spinner2;

然后在你的onCreate中像这样获取他们的引用

spinner1 = (Spinner) findViewById(R.id.hemsSpinner);
spinner2 = (Spinner) findViewById(R.id.materialSpinner);

并使用 yourspinner.getSelectedItem() 方法在按下确认按钮时获取微调器数据

关于java - 让微调器显示他们选择的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16719359/

相关文章:

java - ${(stringToMatch)} 的正则表达式

android - 我需要为我的 Android 应用程序存储 154 张图像,最好的方法是什么?

arrays - 字符串元胞数组到 matlab 结构

java - 使用数组java时的equals方法

java - 在 Java 中屏蔽字符串的最佳方法是什么?

java - 将所有数据存储在内存中时的选项不缩放

Java、Lucene : Case insensitive search not working with WildCard query

android - ArrayAdapter/ListView 不工作

android - 如何在 Android api 级别 19 中以编程方式查找蓝牙 mac 地址

c# - 如何在 C# 中初始化一个空数组?