【发布时间】:2018-08-01 18:56:01
【问题描述】:
我在 MapsActivity 中有一个带有 3 个可点击按钮的谷歌地图。每个按钮在地图上显示不同的标记。
这是通过以下方式实现的:
public void AllMap(View v) //first button
{
SharedPreferences mypref = PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor prefsEditr = mypref.edit();
prefsEditr.putInt("mapselect", 1);
prefsEditr.apply();
finish();
Button button = findViewById(R.id.allmap);
button.setCompoundDrawablesWithIntrinsicBounds( 0, R.drawable.allmapon, 0, 0);
button.setTextColor(Color.parseColor("#ff5722"));
startActivity(getIntent());
}
然后在地图设置中,我阅读了 SharedPreferences 并根据所选选项在地图上添加标记。
这工作正常,但在我点击后,整个活动重新加载,但它似乎是一个从右到左的幻灯片动画。所以新重新加载的活动来自设备的右侧。
我没有动画或类似的设置,但似乎这是我设备上所有活动的默认行为。但是它在 MapsActivity 中似乎不是很好。有没有办法在不重新启动 MapsActivity 的情况下刷新它 - 所以只有标记会改变?
我应该叫什么而不是finish(); startActivity(getIntent());?
【问题讨论】:
标签: android google-maps