gpt4 book ai didi

java - 当您调用一个函数而不是多个函数时,如何在一个 javafile 中放入一个 Activity ,Android

转载 作者:行者123 更新时间:2023-11-29 19:01:32 25 4
gpt4 key购买 nike

所以我有这个 fab 菜单,每个按钮都有不同的 Activity 我想要的是将函数放入一个 java 文件而不是创建大量 java 文件来调用按钮中的不同函数

这是 java 文件之一 - SVAuditorium.class

public class SVAuditorium extends AppCompatActivity {

private static final LatLng Auditorium = new LatLng(10.294335, 123.880809);

@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.street_view);

SupportStreetViewPanoramaFragment streetViewPanoramaFragment =
(SupportStreetViewPanoramaFragment)
getSupportFragmentManager().findFragmentById(R.id.streetviewpanorama);
streetViewPanoramaFragment.getStreetViewPanoramaAsync(
new OnStreetViewPanoramaReadyCallback() {
@Override
public void onStreetViewPanoramaReady(StreetViewPanorama panorama) {
if (savedInstanceState == null) {
panorama.setPosition(Auditorium);
}
}
});
}

}

这就是我调用 SVAuditorium 和其他 Activity 的方法。

case R.id.fab_auditorium:
startActivity(new Intent(this, SVSAuditorium.class));
break;
case R.id.fab_library:
startActivity(new Intent(this, SVLibrary.class));
break;
case R.id.fab_main:
startActivity(new Intent(this, SVMainBuilding.class));
break;

最佳答案

正如您所说,您的每个 Activity 中只有 lat-long 发生变化,我建议您保留一个您想要的 Activity ,并通过 intent 传递 lat-long。这是一个示例代码,显示了如何实现该行为。

Intent intent = new Intent(MainActivity.this, SVActivity.class);
Bundle longLat = new Bundle();
longLat.putDouble("LONGITUDE", longitude);
longLat.putDouble("LATITUDE", latitude);
intent.putExtras(longLat);
startActivity(intent);

像这样在您的 SVActivity 中获取纬度和经度。

Bundle longLat = getIntent().getExtras();
double longitude = longLat.getDouble("LONGITUDE");
double latitude = longLat.getDouble("LATITUDE");

根据在您的 SVActivity 中找到的值初始化您的 View 。

关于java - 当您调用一个函数而不是多个函数时,如何在一个 javafile 中放入一个 Activity ,Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48919817/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com