-------------Custom Navigation(自定义导航栏)-----------------
- - - -custom_view.xml:
- - - - Activity中的内容:
protected void onCreate(Bundle savedInstanceState) { setTheme(SampleList.THEME); //Used for theme switching in samples super.onCreate(savedInstanceState); setContentView(R.layout.text); ((TextView)findViewById(R.id.text)).setText(R.string.custom_navigation_content); //Inflate the custom view View customNav = LayoutInflater.from(this).inflate(R.layout.custom_view, null); //Bind to its state change ((RadioGroup)customNav.findViewById(R.id.radio_nav)).setOnCheckedChangeListener(new OnCheckedChangeListener() { @Override public void onCheckedChanged(RadioGroup group, int checkedId) { Toast.makeText(CustomNavigation.this, "Navigation selection changed.", Toast.LENGTH_SHORT).show(); } }); //Attach to the action bar getSupportActionBar().setCustomView(customNav); getSupportActionBar().setDisplayShowCustomEnabled(true); }
- - - -关键:getSupportActionBar().setCustomView(customNav);
- - - -getSupportActionBar()方法能够获得当前Actionbar的实例,ActionBar中的setCustomView(View view)方法,将动作栏设置为自定义导航模式,并提供自定义导航视图View。自定义导航视图可以出现在应用程序图标和任何动作按钮之间,可以使用任何可用的空间。该自定义导航视图一般用于浏览器或者其他类似于搜索的导航机制。