package com.hsjdow.gancm;

import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.Menu;

import com.google.android.material.snackbar.Snackbar; import com.google.android.material.navigation.NavigationView;

import androidx.navigation.NavController; import androidx.navigation.Navigation; import androidx.navigation.ui.AppBarConfiguration; import androidx.navigation.ui.NavigationUI; import androidx.drawerlayout.widget.DrawerLayout; import androidx.appcompat.app.AppCompatActivity;

import com.hsjdow.gancm.databinding.ActivityMainBinding;

public class MainActivity extends AppCompatActivity {

private AppBarConfiguration mAppBarConfiguration;
private ActivityMainBinding binding;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    binding = ActivityMainBinding.inflate(getLayoutInflater());
    setContentView(binding.getRoot());

    setSupportActionBar(binding.appBarMain.toolbar);
    binding.appBarMain.fab.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            String json = '{"name":"John","age":30,"city":"New York"}';

            String result = json.substring(json.indexOf(':"') + 2, json.indexOf('"', json.indexOf(':"') + 2));
            Log.d("Jq Result", result);
        }
    });

    DrawerLayout drawer = binding.drawerLayout;
    NavigationView navigationView = binding.navView;

    // Passing each menu ID as a set of Ids because each
    // menu should be considered as top level destinations.
    mAppBarConfiguration = new AppBarConfiguration.Builder(
            R.id.nav_home, R.id.nav_gallery, R.id.nav_slideshow)
            .setOpenableLayout(drawer)
            .build();

    NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment_content_main);
    NavigationUI.setupActionBarWithNavController(this, navController, mAppBarConfiguration);
    NavigationUI.setupWithNavController(navigationView, navController);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

@Override
public boolean onSupportNavigateUp() {
    NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment_content_main);
    return NavigationUI.navigateUp(navController, mAppBarConfiguration)
            || super.onSupportNavigateUp();
}

public void dow_imgone(View view) {
    Snackbar.make(view, "点击了按钮", Snackbar.LENGTH_LONG)
            .setAction("Action", new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    // 添加点击操作
                }
            }).show();
}

}

Android 应用开发:使用 Navigation 和 Snackbar 的示例代码

原文地址: https://www.cveoy.top/t/topic/iIpH 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录