2017-01-12 69 views
0

这是我的代码我很想尝试在微调显示项目,但都是徒劳的 列表显示时按下微调箭头但没有选择,并做在敬酒不显示,请帮助我,引导我在哪里,我错了微调列表显示时,按微调但列表项不显示,但没有显示在烤面包

public class MakeComplain extends AppCompatActivity implements  
OnItemSelectedListener { 
private Spinner spinner,spinner1,spinner3; 
private TextView txtCategory; 

private ArrayList<String> Station; 



private JSONArray result; 


@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_make_complain); 
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar); 

    spinner1 = (Spinner) findViewById(R.id.station); 
    spinner3 = (Spinner) findViewById(R.id.generator); 
    spinner = (Spinner) findViewById(R.id.complain); 

    spinner1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
      //Get data from the list which you had set to the adapter of spinner1 
      Toast.makeText(MakeComplain.this, "Spinner1 Item Clicked: "+position, Toast.LENGTH_SHORT).show(); 
     } 

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

     } 
    }); 

    spinner3.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
     @Override 
     public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
      //Get data from the list which you had set to the adapter of spinner3 
      Toast.makeText(MakeComplain.this, "Spinner3 Item Clicked: "+position, Toast.LENGTH_SHORT).show(); 
     } 

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

     } 
    }); 

    ArrayAdapter arrayAdapter = ArrayAdapter.createFromResource(this, R.array.Complain, android.R.layout.simple_spinner_item); 
    spinner.setAdapter(arrayAdapter); 


    spinner1.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, this.fetchTwitterPublicTimeline())); 
    spinner3.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, this.fetchGeneratorList())); 





} 
public ArrayList<String> fetchTwitterPublicTimeline() 
{ 
    final ArrayList<String> listItems = new ArrayList<String>(); 

    new Thread(new Runnable() { 
     @Override 
     public void run() { 
      try { 
       URL url = new URL("http://bigbi.com/cs/Station.php"); 
       HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); 
       urlConnection.setRequestMethod("GET"); 
       //urlConnection.setRequestProperty("User-Agent", "Mozilla/5.0"); 
       InputStream stream = urlConnection.getInputStream(); 
       InputStreamReader reader = new InputStreamReader(stream); 
       BufferedReader bufferedReader = new BufferedReader(reader); 
       String line; 
       while ((line = bufferedReader.readLine()) != null) { 
        JSONArray ja = new JSONArray(line); 

        for (int i = 0; i < ja.length(); i++) { 
         JSONObject jo = (JSONObject) ja.get(i); 
         listItems.add(jo.getString("name")); 
        } 
       } 
       bufferedReader.close(); 
      } catch (MalformedURLException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } catch (JSONException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     } 
    }).start(); 

    return listItems; 
} 
public ArrayList<String> fetchGeneratorList() 
{ 
    final ArrayList<String> listItems = new ArrayList<String>(); 

    new Thread(new Runnable() { 
     @Override 
     public void run() { 
      try { 
       URL url = new URL("http://biges.com/12/get.php"); 
       HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection(); 
       urlConnection.setRequestMethod("GET"); 
       //urlConnection.setRequestProperty("User-Agent", "Mozilla/5.0"); 
       InputStream stream = urlConnection.getInputStream(); 
       InputStreamReader reader = new InputStreamReader(stream); 
       BufferedReader bufferedReader = new BufferedReader(reader); 
       String line; 
       while ((line = bufferedReader.readLine()) != null) { 
        JSONArray ja = new JSONArray(line); 

        for (int i = 0; i < ja.length(); i++) { 
         JSONObject jo = (JSONObject) ja.get(i); 
         listItems.add(jo.getString("gen_no")); 
        } 
       } 
       bufferedReader.close(); 
      } catch (MalformedURLException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } catch (JSONException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 
     } 
    }).start(); 

    return listItems; 
} 
public void onItemSelected(AdapterView<?> parent, View view, int position, 
          long id) { 


} 


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

}

+0

后同样的结果没有显示 –

回答

0

请这个尝试,

spinner1.setAdapter(new ArrayAdapter<String>(this, R.layout.spinner_item, fetchTwitterPublicTimeline())); 
spinner3.setAdapter(new ArrayAdapter<String>(this, R.layout.spinner_item,fetchGeneratorList())); 

为CLIC物品上的王可以添加。

public void onItemSelected(AdapterView<?> parent, View view, int position, 
          long id) { 

Toast.makeText(getActivity(), "Item clicked", 
    Toast.LENGTH_LONG).show(); 


} 
+0

我都试过,但问题仍悬而未决 –

0

你错过了两件事。

  1. 您尚未添加选择项目的侦听器。添加以下内容以添加侦听器。

    spinner.setOnItemSelectedListener(this); 
    

    如果您愿意,可以为其他纺纱厂添加相同的参数。

  2. onItemSelected()方法中添加用于显示烤面包的代码。事情是这样的

    Toast.makeText(this, "Item Clicked", Toast.LENGTH_SHORT).show(); 
    
0

您已经实施了监听onItemSelection为微调,但你没有设置onItemSelection的微调,因此更新您的onCreate这样的:

@Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_make_complain); 
     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 

     spinner1 = (Spinner) findViewById(R.id.station); 
     spinner3 = (Spinner) findViewById(R.id.generator); 
     spinner = (Spinner) findViewById(R.id.complain); 

     spinner1.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
      @Override 
      public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
       //Get data from the list which you had set to the adapter of spinner1 
       Toast.makeText(this, "Spinner1 Item Clicked: "+position, Toast.LENGTH_SHORT).show(); 
      } 

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

      } 
     }); 

     spinner3.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
      @Override 
      public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
       //Get data from the list which you had set to the adapter of spinner3 
       Toast.makeText(this, "Spinner3 Item Clicked: "+position, Toast.LENGTH_SHORT).show(); 
      } 

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

      } 
     }); 

     spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { 
      @Override 
      public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { 
       //Get data from the list which you had set to the adapter of spinner 
       Toast.makeText(this, "Spinner Item Clicked: "+position, Toast.LENGTH_SHORT).show(); 
      } 

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

      } 
     }); 

     ArrayAdapter arrayAdapter = ArrayAdapter.createFromResource(this, R.array.Complain, android.R.layout.simple_spinner_item); 
     spinner.setAdapter(arrayAdapter); 

     Station=this.fetchTwitterPublicTimeline(); 

     spinner1.setAdapter(new ArrayAdapter<String>(this, R.layout.spinner_item,R.id.txt, this.fetchTwitterPublicTimeline())); 
     spinner3.setAdapter(new ArrayAdapter<String>(this, R.layout.spinner_item,R.id.txt, this.fetchGeneratorList())); 

    } 

单独设置我这里将setOnItemSelectedListener设置为spinners,因为如果我们重写一个方法,那么您将无法找出哪些spinners项目选择是回调。

因此,为此删除执行的实施
OnItemSelectedListener从您的活动和相对它的被覆盖的方法也做,因为我回答。

+0

我厌倦了和你一样,但问题仍然 –

+0

如果你正在做这样便发生了什么 –

+0

我有更新的代码上创建的,在顶部 –