2014-02-12 40 views
0

在我的應用程序中,我必須從spinners中選擇地點,並且所選地點應該顯示在Map的標記上。我試圖獲取place的latlong並在地圖中使用該標記來顯示該地點的標記。 我使用的代碼經緯度: -將latlong設置爲Spinner

public String getLatLong(double latitude, double longitude) 
    { 
     StringBuilder result = new StringBuilder(); 
      try { 
       Geocoder geocoder = new Geocoder(this, Locale.getDefault()); 
       List<Address> addresses = geocoder.getFromLocation(latitude, longitude, 1); 
       if (addresses.size() > 0) 
       { 
        Address address = addresses.get(0); 
        result.append(address.getLocality()).append("\n"); 
        result.append(address.getCountryName()); 
       } 
      } catch (IOException e) 
      { 
       Log.e("tag", e.getMessage()); 
      } 
     return result.toString(); 
    } 

但我的問題是,我不能設置這個經緯度到我的微調,並設置OM地圖。

我的飛旋的代碼: -

spinner1 = (Spinner)findViewById(R.id.spinner1); 
     ArrayAdapter<String> array_state = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,state); 
     array_state.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spinner1.setAdapter(array_state); 
     spinner1.setOnItemSelectedListener(new OnItemSelectedListener() { 

      @Override 
      public void onItemSelected(AdapterView<?> parent, View arg1,int pos, long arg3) { 
       Toast.makeText(parent.getContext(), 
       "OnItemSelectedListener : " + parent.getItemAtPosition(pos).toString(),Toast.LENGTH_SHORT).show(); 
      } 
      @Override 
      public void onNothingSelected(AdapterView<?> arg0) {     
      } 

     }); 

     spinner2 = (Spinner)findViewById(R.id.spinner2); 
     ArrayAdapter<String> array_states = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,states); 
     array_states.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
     spinner2.setAdapter(array_states); 
     spinner2.setOnItemSelectedListener(new OnItemSelectedListener() { 

      @Override 
      public void onItemSelected(AdapterView<?> parent, View arg1, 
        int pos, long arg3) { 
       Toast.makeText(parent.getContext(), 
          "OnItemSelectedListener : " + parent.getItemAtPosition(pos).toString(), 
          Toast.LENGTH_SHORT).show(); 

      } 

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

      } 
     }); 

     Button send = (Button)findViewById(R.id.button1); 
     send.setOnClickListener(new OnClickListener() { 

      public void onClick(View v) { 

       intent = new Intent(MainActivity.this,Map.class); 
       startActivity(intent); 
      } 
     }); 
     getLatLong(0,0);//Method declare here 
    } 

請幫我做到這一點。 如何使用微調器設置此latlong方法

回答

0

我無法將此latlong設置爲我的微調器並設置om映射。

所以,當你通過你的數據適配器,當你正在做的:

spinner1.setAdapter(array_state); 

或者

spinner2.setAdapter(array_states); 

這意味着你已經將數據傳遞到微調。

大問題是,您還沒有區分Spinner爲此所用的偵聽器?

所以,你可以讓匿名方法,如:

spinner1.setOnItemSelectedListener(new OnItemSelectedListener() { 

      @Override 
      public void onItemSelected(AdapterView<?> parent, View arg1, 
        int pos, long arg3) { 
      // TODO Auto-generated method stub 
    Toast.makeText(parent.getContext(), 
    "OnItemSelectedListener : " + parent.getItemAtPosition(pos).toString(), 
    Toast.LENGTH_SHORT).show(); 
      } 

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

      } 
     }); 
        And 
spinner2.setOnItemSelectedListener(new OnItemSelectedListener() { 

      @Override 
      public void onItemSelected(AdapterView<?> parent, View arg1, 
        int pos, long arg3) { 
       // TODO Auto-generated method stub 
       Toast.makeText(parent.getContext(), 
       "OnItemSelectedListener : " + parent.getItemAtPosition(pos).toString(), 
       Toast.LENGTH_SHORT).show(); 
      } 

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

      } 
     }); 
   ******************* Edited **************************** 

看到這個,你會得到你的答案。

How to implement search functionality for Google Map Api V2 Android?

+0

thanks.I已經糾正它。但是,這是不是我的疑難問題要如何讓我的微調地區的latlong.through我的代碼,我不能猜怎麼辦呢 – Barun

+0

事實上,我給你你在問什麼? –

+0

當我選擇我的地方在微調我想在地圖上顯示標記 – Barun

相關問題