嘿傢伙如何在我的項目中使用sharedpreferences。我在主要活動和第二活動中有一個浮動按鈕,當我單擊浮動按鈕時,指南針將被禁用,然後當我進入第二個活動時,指南針被啓用,而禁用改爲。如何解決此問題?如何通過查看活動之間的可見性狀態
這裏是我的代碼baseactivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
FloatingActionButton compass1 = (FloatingActionButton)findViewById(R.id.comp);
compass1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(findViewById(R.id.relativeLayout1).getVisibility()==View.VISIBLE){
findViewById(R.id.relativeLayout1).setVisibility(View.GONE);
Toast.makeText(getApplicationContext(),"Compass Has Been Disabled",Toast.LENGTH_SHORT).show();
}
else{
findViewById(R.id.relativeLayout1).setVisibility(View.VISIBLE);
Toast.makeText(getApplicationContext(),"Compass Has Been Enabled",Toast.LENGTH_SHORT).show();
}
}
});
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.setDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
}
@覆蓋 公共布爾onNavigationItemSelected(菜單項項){
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_first) {
Intent myIntent = new Intent(this,MainActivity.class);
myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(myIntent);
finish();
} else if (id == R.id.nav_second) {
Intent myIntent = new Intent(this,SecondFloor.class);
myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(myIntent);
finish();
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
嘿我在頂部添加我的代碼 – madara
我不知道如何在類字段isCompassVisible中保存從compass1點擊監聽器的狀態。對不起,即時通訊新手在android – madara
'isCompassVisible = findViewById(R.id.relativeLayout1).getVisibility()== View.VISIBLE? false:true;' –