2017-07-31 63 views
1

我想要做的是,如果我點擊一個特定的標記,它應該得到標記並將其存儲在全局字符串中。然後我會點擊這個按鈕,它會告訴(顯示一個Toast),如果標籤與我在我的AutoCompleteTextView中輸入的相同。Store marker.getTag()到一個字符串 - android studio

我onMarkerClick代碼:

@Override 
    public boolean onMarkerClick(Marker marker) { 
     tag = marker.getTag().toString(); 
     return false; 
    } 

這是我把我的谷歌地圖,我設置了一個名爲「自行車」

public void espana(){ 

    LatLng espana = new LatLng(14.612056, 120.995471); 
    MarkerOptions espanaMarker = new MarkerOptions(); 
    espanaMarker.position(espana); 
    espanaMarker.title("Espana"); 
    espanaMarker.snippet("Fare rate: 8-25 pesos"); 

    mCurrLocationMarker = map.addMarker(espanaMarker); 
    mCurrLocationMarker.setTag("bike"); 

    map.addPolyline(new PolylineOptions().add(
      new LatLng(14.611319, 120.994752), 
      new LatLng(14.612855, 120.996404) 
    ) 
      .width(5) 
      .color(Color.RED) 
    ); 
} 

我在按鈕的onClick代碼標籤標記:

public void onClick(View view) { 
    AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.text_category); 

      if (textView.getText().equals(tag)){ 

       Toast.makeText(this, "This is my message", Toast.LENGTH_LONG).show(); 
      } else { 
       Toast.makeText(this, "Error!", Toast.LENGTH_LONG).show(); 
      } 
} 

回答

0

我發現我的代碼出了什麼問題,它出現在我的onclick按鈕中。我忘了在我的'if'語句中添加.toString()。它不會將textView讀作字符串,這就是程序跳過'if'語句的原因。

public void onClick(View view) { 
    AutoCompleteTextView textView = (AutoCompleteTextView) findViewById(R.id.text_category); 

      if (textView.getText().toString().equals(tag)){ 

       Toast.makeText(this, "This is my message", Toast.LENGTH_LONG).show(); 
      } else { 
       Toast.makeText(this, "Error!", Toast.LENGTH_LONG).show(); 
      } 
} 
相關問題