2017-05-23 4 views
0

私はPlacePicker.IntentBuilderを使用して、マップから近くの場所を選択しています。すべてが期待どおりに機能していますが、一番上の検索バーの候補はローカライズされていません。 私はサウジアラビアに住んでいます。リンゴ蜂を書くと、私はアメリカのすべてのリンゴ蜂を私に示唆しています。この検索をローカライズするにはどうすればよいですか? 助けていただければ幸いです。PlacePicker.IntentBuilder検索がローカライズされていません

私のコードは次のとおりです。私はあなたが検索領域をカプセル化する地域を与えることができます覚えていたよう

enter image description here

答えて

0

以下
PlacePicker.IntentBuilder builder = new PlacePicker.IntentBuilder(); 
    LatLngBounds bounds = new LatLngBounds(new LatLng(
      getLocation().getLatitude(), getLocation().getLongitude()), 
      new LatLng(getLocation().getLatitude(), getLocation().getLongitude())); 

    builder.setLatLngBounds(bounds);   

    startActivityForResult(builder.build(getActivity()), 
      PLACE_AUTOCOMPLETE_REQUEST_CODE); 

は私の結果のスクリーンショットです。ここにはreferenceがあります。

setLatLngBoundsメソッドを使用する必要があります。

UPDATEまた

あなたはポイント以上2.

幸運

エムレ

+0

setLatLngBoundsのみマップの開始ビューポートを設定します。 – AndroidGeek

+0

ちょうどそれを試してください –

+0

これはこれまで私の試みです。 PlacePicker.IntentBuilder builder =新しいPlacePicker.IntentBuilder();LatLngBounds bounds = new LatLngBounds(new LatLng(15.199386、43.096619)、new LatLng(34.452218、42.745056)); builder.setLatLngBounds(bounds); startActivityForResult(builder.build(getActivity())、PLACE_AUTOCOMPLETE_REQUEST_CODE); – AndroidGeek

0

緯度ラングの追加を持っているので、よりエレガントなコードとoptmized地域のLatLngBound.Builderを使用してください境界線は地図の開始ビューポートを設定し、同時にその境界線の周りの場所を返します:

public class PlacePickerActivity extends AppCompatActivity { 
     private static final int PLACE_PICKER_REQUEST = 1; 
     private TextView mName; 
     private TextView mAddress; 
     private TextView mAttributions; 
     private static final LatLngBounds BOUNDS_MOUNTAIN_VIEW = new LatLngBounds(
       new LatLng(37.398160, -122.180831), new LatLng(37.430610, -121.972090)); 

     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_place_picker); 
      mName = (TextView) findViewById(R.id.textView); 
      mAddress = (TextView) findViewById(R.id.textView2); 
      mAttributions = (TextView) findViewById(R.id.textView3); 
      Button pickerButton = (Button) findViewById(R.id.pickerButton); 
      pickerButton.setOnClickListener(new View.OnClickListener() { 
       @Override 
       public void onClick(View v) { 
        try { 
         PlacePicker.IntentBuilder intentBuilder = 
           new PlacePicker.IntentBuilder(); 
         intentBuilder.setLatLngBounds(BOUNDS_MOUNTAIN_VIEW); 
         Intent intent = intentBuilder.build(PlacePickerActivity.this); 
         startActivityForResult(intent, PLACE_PICKER_REQUEST); 

        } catch (GooglePlayServicesRepairableException 
          | GooglePlayServicesNotAvailableException e) { 
         e.printStackTrace(); 
        } 
       } 
      }); 
     } 
関連する問題