마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

bottom navigationbar 문의

0 추천

bottom navigationbar에서 버튼을 누르면 그때마다 그 fragment가 작동이 되는데요

app을 실행하면 처음에는 하단부 1번 버튼이 선택은 되어잇으나 

fragment를 거치지 않아서 fragment가 동작하지 않습니다.

하단 버튼을 클릭했을 경우 실행되는데요

처음 앱 실행시 1번 버튼이 자동으로 실행되게 하는 방법이 없나요??

import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.BottomNavigationView;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.AppCompatActivity;
import android.view.MenuItem;

public class MainActivity extends AppCompatActivity {
    private BottomNavigationView bottomNavigationView;
    private Fragment fragment;
    private FragmentManager fragmentManager;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        fragmentManager = getSupportFragmentManager();

        //Bottom Buttom
        bottomNavigationView = (BottomNavigationView) findViewById(R.id.bottom_navigation);

        bottomNavigationView.setOnNavigationItemSelectedListener(
                new BottomNavigationView.OnNavigationItemSelectedListener() {
                    @Override
                    public boolean onNavigationItemSelected(@NonNull MenuItem item) {
                        switch (item.getItemId()) {
                            case R.id.action_recipe:
                                fragment = new RecipeFragment();
                                break;
                            case R.id.action_parts:
                                fragment = new PartsFragment();
                                break;
                            case R.id.action_remote:
                                fragment = new RemoteFragment();
                                break;
                            case R.id.action_unfreeze:
                                fragment = new UnfreezeFragment();
                                break;
                            case R.id.action_bluetooth:
                                fragment = new BluetoothFragment();
                                break;
                        }
                        final FragmentTransaction transaction = fragmentManager.beginTransaction();
                        transaction.replace(R.id.main_container, fragment).commit();
                        return true;
                    }
                }
        );
    }
}

 

쿠쿠부다스 (6,470 포인트) 님이 2017년 7월 24일 질문

1개의 답변

0 추천

http://thdev.tech/androiddev/2016/12/16/Android-BottomNavigationView-Intro.html

prevBottomNavigation = bottomNavigationView.getMenu().getItem(position);
  prevBottomNavigation.setChecked(true);

익명사용자 님이 2017년 7월 25일 답변
...