আমার কোড নিখুঁতভাবে কাজ করে: ন্যাভিগেশন ড্রয়ারের আইটেমটি ক্লিক করার পরে আইটেমটি নির্বাচন করা হয়।
অবশ্যই আমি একটি ডিফল্ট টুকরা (হোম) দিয়ে অ্যাপ্লিকেশনটি শুরু করতে চাই, তবে নেভিগেশন ড্রয়ারের আইটেমটি নির্বাচন করা হয়নি। আমি কীভাবে প্রোগ্রামটিমে সেই আইটেমটি নির্বাচন করতে পারি?
public class BaseApp extends AppCompatActivity {
//Defining Variables
protected String LOGTAG = "LOGDEBUG";
protected Toolbar toolbar;
protected NavigationView navigationView;
protected DrawerLayout drawerLayout;
private DateManager db = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.base_layout);
navigationView = (NavigationView) findViewById(R.id.navigation_view);
// set the home/dashboard at startup
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.frame, new DashboardFragment());
fragmentTransaction.commit();
setNavDrawer();
}
private void setNavDrawer(){
// Initializing Toolbar and setting it as the actionbar
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
//Initializing NavigationView
//Setting Navigation View Item Selected Listener to handle the item click of the navigation menu
navigationView.setNavigationItemSelectedListener(new NavigationView.OnNavigationItemSelectedListener() {
// This method will trigger on item Click of navigation menu
@Override
public boolean onNavigationItemSelected(MenuItem menuItem) {
//Checking if the item is in checked state or not, if not make it in checked state
// I THINK THAT I NEED EDIT HERE...
if (menuItem.isChecked()) menuItem.setChecked(false);
else menuItem.setChecked(true);
//Closing drawer on item click
drawerLayout.closeDrawers();
//Check to see which item was being clicked and perform appropriate action
switch (menuItem.getItemId()) {
//Replacing the main content with ContentFragment
case R.id.home:
DashboardFragment dashboardFragment = new DashboardFragment();
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.frame, dashboardFragment,"DASHBOARD_FRAGMENT");
fragmentTransaction.commit();
return true;
[...]
আমার মনে হয় এখানে আমাকে সম্পাদনা করা দরকার:
if (menuItem.isChecked()) menuItem.setChecked(false);
else menuItem.setChecked(true);
বা onCreate
ফ্র্যাগমেন্টট্রান্সঅ্যাকশন সহ অ্যাপ স্টার্টআপ এ।
আপনার সমর্থনের জন্য ধন্যবাদ.
onNavigationItemSelected
কোনওটি কি নির্বাচিত আইডির জন্য ক্রিয়া শুরু করে?