2012-11-17 33 views
0

如果我有2个微调第二个依赖于第一个 我将从MySQL数据库中检索第二个微调的信息取决于第一个微调的选择我succuflly获得第一个微调的id但我不 如何将其发送给另一原因是没有与我2 dependent dependent spinner

工作,我有类MainActivity有:

new LoadAllCourses().execute(); //first spinner generation 
new LoadAllSection().execute(); //second spinner 

class LoadAllCourses extends AsyncTask<String, String, String>

adapter1 = new MyCustomAdapter(MainActivity.this, 
        android.R.layout.simple_spinner_item, 
        coursesList); 

      spinner1.setAdapter(adapter1); // Set the custom adapter to the spinner 

      spinner1.setOnItemSelectedListener(new OnItemSelectedListener() { 
        @Override 
        public void onItemSelected(AdapterView<?> adapterView, View view, int position, long id) { 

         HashMap<String, String> map12 = coursesList.get(position); 
          String id3 = map12.get("CourseID"); 
          // Do something 
         Log.d("All coursesdddddddddddddddddddddddddddddddddddd: ", id3); 
         // Do something 

        } 
        @Override 
        public void onNothingSelected(AdapterView<?> adapter) { 

        } 
       }); 

现在我想要得到的ID3并将其发送到

class LoadAllSection extends AsyncTask<String, String, String> 

,但实在不行

我怎么能解决这个问题,如果我有,我说

回答

0

如果我明白你的问题,您需要在第一个微调器上进行选择以作为从数据库搜索的基础来填充第二个微调器。

如果在适配器1(adapter1 = new MyCustomAdapter(MainActivity.this, android.R.layout.simple_spinner_item, coursesList);)中courseList是一个数组,则可以从setOnItemSelectedListeneras中的微调器中获取所选项目,如下courseList [position]

获得选定的项目后,您需要一个函数在数据库中执行查询,如load_all_selection(courseList [position]),它应该返回数据库中的结果数组。

因为它返回一个阵列可以如下
adapter2 = new MyCustomAdapter(MainActivity.this, android.R.layout.simple_spinner_item, load_all_selection(courseList [position]));
限定适配器2并将其分配给所述第二旋转器spinner2.setAdapter(adapter2);

所有这些都可以从setOnItemSelectedListener部分中完成,可能除了定义load_all_selection(...)函数。

我希望我理解你的问题,这有助于。如果没有,你仍然可以四处寻找不同的解决方案。

+0

是的,你明白我,但我的适配器2是在LoadAllSection里面,LoadAllSection如何获得d3,所以我可以从db检索 –

+0

是的,你明白我,但我有类的LoadAllSection有indide它params1.add(new BasicNameValuePair(“CourseID “,id3));她是id3它没有得到LoadAllCourses –

+0

里面的id3的值。所以他们分成两个班级。如果你在LoadAllSelection中创建一个set_id()函数来接收id3,然后load_all_function()可以使用接收到的值来查询数据库呢? –