2017-09-19 45 views
-1

我正在使用三个纺纱从用户那里得到输入,并根据这些信息,然后我将绘制的一些数据。但我似乎无法弄清楚如何做到这一点。我有以下代码(提取物以显示重要比特):做一个任务基于多个onItemSelectedListeners

final GraphView graph = (GraphView) findViewById(R.id.graph); 
Spinner selectGraphSpinner = (Spinner) findViewById(R.id.graphSpinner); 
Spinner selectUserSpinner = (Spinner) findViewById(R.id.userSpinner); 
Spinner selectTimeSpinner = (Spinner) findViewById(R.id.timeSpinner); 
    String[] items = new String[]{"Please Select a User", "04950f4ae53f80", "another user"}; 

    // Create ArrayAdapters for Spinners 
ArrayAdapter<CharSequence> selectGraphAdapter = ArrayAdapter 
      .createFromResource(this, R.array.Graphs, 
        android.R.layout.simple_spinner_item); 
ArrayAdapter<String> userSpinnerAdapter = new ArrayAdapter<String>(this, 
      android.R.layout.simple_spinner_item, items); 
ArrayAdapter<CharSequence> spinTimeAdapter = ArrayAdapter 
      .createFromResource(this, R.array.TimeIncrements, 
        android.R.layout.simple_spinner_item); 
selectGraphSpinner.setAdapter(selectGraphAdapter); 
selectUserSpinner.setAdapter(userSpinnerAdapter); 
selectTimeSpinner.setAdapter(spinTimeAdapter); 

的onItemSelectedListeners×3重复用于其他旋转器:

selectUserSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> parent, View view, 
            int position, long id) { 
      itemOne = parent.getItemAtPosition(0).toString(); 
     } 

     @Override 
     public void onNothingSelected(AdapterView<?> parent) { 
      // TODO Auto-generated method stub 
     } 
    }); 

所述图形逻辑到目前为止:

while (itemOne != null) { 
     if (itemOne.equalsIgnoreCase("04950f4ae53f80")) { 
      if (itemTwo.equalsIgnoreCase("Estimated vs Actual Time")) { 
       if (itemThree.equalsIgnoreCase("Day")) { 
        LineGraphSeries<DataPoint> series = new LineGraphSeries<DataPoint>(getData(Data, "Day")); 

        graph.addSeries(series); 

       } else { 

       } 
      } else { 

      } 

     } else { 

     } 
    } 

我知道,图形作品,因为我有一个微调尝试过,但无法弄清楚,为什么听众不保存变量(我声明的全局 - 静态字符串itemOne等) 谢谢 编辑:旋转器包含多个字符串与不同的初始,但提到使用的,

回答

0

我设法做到这一点通过将每个微调器点击项目保存到全局函数/变量。这允许我运行一个逻辑检查,根据情况返回true或false。然后,我将图形方法放入监听器中,以便在逻辑检查返回true时执行。