【发布时间】:2018-09-21 06:00:00
【问题描述】:
我所拥有的:当你打开一个应用程序时,它会向你显示一个带有 3 个按钮的地图,上面写着“餐厅”、“医院”、“酒吧”,一旦单击其中一个按钮,它们就会向你显示附近的这个地方
我有什么:对于美学问题,当您打开一个应用程序时,它会向您显示一个带有图像的 RecyclerView,当您单击其中一张图像时,您会看到一张包含您当前位置的地图。
我想要什么:当我单击 RecyclerView 的其中一个图像(例如餐厅)时,它会显示一张包含我附近餐厅的地图,但是从我在 OnBindViewHolder 上的 RecyclerView 的适配器中的 OnClickListener 发出此请求() 方法
我的问题:如果 Latitude 和 Longitude 等元素在另一个 Activity 中以及在一个名为 OnMapReady () 的方法中,我如何提出这个请求,在该方法中,我曾经使用我最初拥有的按钮发出请求。请提供代码示例的答案,我仍然不太擅长编程,有数百万个术语我不明白,提前谢谢
我的 RecyclerView 以及我想在哪里提出请求
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, final int position) {
holder.etiNombre.setText(listalugares.get(position).getNombre());
holder.foto.setImageResource(listalugares.get(position).getFoto());
holder.foto.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (position == 0){
Intent myIntent = new Intent(context, MapsActivity.class);
context.startActivity(myIntent);
}
}
});
}
我曾经提出请求的地方
@Override
public void onMapReady(GoogleMap googleMap) {//esta funcion es llamada cuando el mapa esta listo para usarse(1- locacion)
mMap = googleMap;
mMap.setMapType(GoogleMap.MAP_TYPE_NORMAL);//esto es lo que que dice de que forma queremos que se vea el mapa
//Initialize Google Play Services
if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (ContextCompat.checkSelfPermission(this,
Manifest.permission.ACCESS_FINE_LOCATION)
== PackageManager.PERMISSION_GRANTED) {
buildGoogleApiClient();
mMap.setMyLocationEnabled(true);
}
}
else {
buildGoogleApiClient();
mMap.setMyLocationEnabled(true);
}
Button btnRestaurant = (Button) findViewById(R.id.btnRestaurant);
btnRestaurant.setOnClickListener(new View.OnClickListener() {
String Restaurant = "restaurant";
@Override
public void onClick(View v) {
Log.d("onClick", "Button is Clicked");
mMap.clear();
String url = getUrl(latitude, longitude, Restaurant);
Object[] DataTransfer = new Object[2];
DataTransfer[0] = mMap;
DataTransfer[1] = url;
Log.d("onClick", url);
GetNearbyPlacesData getNearbyPlacesData = new GetNearbyPlacesData();
getNearbyPlacesData.execute(DataTransfer);
Toast.makeText(MapsActivity.this,"Nearby Restaurants", Toast.LENGTH_LONG).show();
}
});
【问题讨论】:
标签: java android xml android-studio android-recyclerview