Java 如何创建动态底部导航栏或底部导航栏
我在这个活动中创建了一个活动,有一个特定的选项卡,我只想以编程方式创建这些底部栏,以插入类似这样的数据Java 如何创建动态底部导航栏或底部导航栏,java,android,Java,Android,我在这个活动中创建了一个活动,有一个特定的选项卡,我只想以编程方式创建这些底部栏,以插入类似这样的数据 gridArray.add(new Item(homeIcon, rs.getString("Name"), OpenIn, rs.getString("Covers"), rs.getString("Count_Checks"))); 这是我的TabsActivity我只想在这个活动中添加这个底部导航 package abtech.waiteriano.com.waitrer; impo
gridArray.add(new Item(homeIcon, rs.getString("Name"), OpenIn, rs.getString("Covers"), rs.getString("Count_Checks")));
这是我的TabsActivity我只想在这个活动中添加这个底部导航
package abtech.waiteriano.com.waitrer;
import android.os.Bundle;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
import java.util.ArrayList;
import java.util.List;
import abtech.waiteriano.com.waitrer.fragments.TablesFragment;
public class TabsActivity extends AppCompatActivity {
private Toolbar toolbar;
private TabLayout tabLayout;
private ViewPager viewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tabs);
toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
viewPager = (ViewPager) findViewById(R.id.viewpager);
/**
* Initializing the viewpager with fragments
*/
ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
adapter.addFragment(new TablesFragment(), "Progress");
adapter.addFragment(MyFragment.newInstance("Example1"), "Example1");
adapter.addFragment(MyFragment.newInstance("Example2"), "Example2");
adapter.addFragment(MyFragment.newInstance("Example3"), "Example3");
viewPager.setAdapter(adapter);
tabLayout = (TabLayout) findViewById(R.id.tabs);
//adding viewpager to the tablayout
tabLayout.setupWithViewPager(viewPager);
tabLayout.setTabMode(TabLayout.MODE_SCROLLABLE);
}
class ViewPagerAdapter extends FragmentPagerAdapter {
private final List<Fragment> mFragmentList = new ArrayList<>();
private final List<String> mFragmentTitleList = new ArrayList<>();
public ViewPagerAdapter(FragmentManager manager) {
super(manager);
}
@Override
public Fragment getItem(int position) {
return mFragmentList.get(position);
}
@Override
public int getCount() {
return mFragmentList.size();
}
public void addFragment(Fragment fragment, String title) {
mFragmentList.add(fragment);
mFragmentTitleList.add(title);
}
@Override
public CharSequence getPageTitle(int position) {
return mFragmentTitleList.get(position);
}
}
}
package abtech.waiteriano.com.waiter;
导入android.os.Bundle;
导入android.support.design.widget.TabLayout;
导入android.support.v4.app.Fragment;
导入android.support.v4.app.FragmentManager;
导入android.support.v4.app.FragmentPagerAdapter;
导入android.support.v4.view.ViewPager;
导入android.support.v7.app.AppActivity;
导入android.support.v7.widget.Toolbar;
导入java.util.ArrayList;
导入java.util.List;
导入abtech.waiteriano.com.waiter.fragments.TablesFragment;
公共类选项卡活动扩展了AppCompatActivity{
专用工具栏;
私人摊位摊位;
私人视页机视页机;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_选项卡);
toolbar=(toolbar)findviewbyd(R.id.toolbar);
设置支持操作栏(工具栏);
viewPager=(viewPager)findViewById(R.id.viewPager);
/**
*使用片段初始化viewpager
*/
ViewPagerAdapter适配器=新的ViewPagerAdapter(getSupportFragmentManager());
addFragment(新的tableFragment(),“Progress”);
addFragment(MyFragment.newInstance(“Example1”),“Example1”);
addFragment(MyFragment.newInstance(“Example2”),“Example2”);
addFragment(MyFragment.newInstance(“Example3”),“Example3”);
viewPager.setAdapter(适配器);
tabLayout=(tabLayout)findViewById(R.id.tabs);
//将viewpager添加到表格布局
tabLayout.setupWithViewPager(viewPager);
tabLayout.setTabMode(tabLayout.MODE可滚动);
}
类ViewPagerAdapter扩展了FragmentPagerAdapter{
私有最终列表MFFragmentList=new ArrayList();
私有最终列表MFFragmentTitleList=new ArrayList();
公共视图页面编辑器(碎片管理器){
高级经理;
}
@凌驾
公共片段getItem(int位置){
返回MFFragmentList.get(位置);
}
@凌驾
public int getCount(){
返回MFFragmentList.size();
}
public void addFragment(片段片段,字符串标题){
添加(片段);
MFFragmentTitleList.add(标题);
}
@凌驾
公共字符序列getPageTitle(int位置){
返回MFFragmentTitleList.get(位置);
}
}
}
您可以使用最近添加的支持库中提供的官方google BottomNavigationView类。只需在app build.gradle文件中添加以下依赖项即可
compile ‘com.android.support:design:25.0.0’
您可以找到文档是的,我知道,但我需要添加java代码不使用菜单的项,是吗?我没有尝试过,但我建议您通过调用
getMenu()来检索菜单对象
并通过向该对象添加菜单来更新菜单。希望如此works@7arooney您是否尝试过动态添加菜单项?