学习android,现在我遇到了一个简单的问题。
我用菜单幻灯片开始了一个新项目
package com.learn2crack.tab;
import android.os.Bundle;
import android.app.ActionBar;
import android.app.FragmentTransaction;
import android.support.v4.app.FragmentActivity;
import android.support.v4.view.ViewPager;
public class MainActivity extends FragmentActivity {
ViewPager Tab;
TabPagerAdapter TabAdapter;
ActionBar actionBar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TabAdapter = new TabPagerAdapter(getSupportFragmentManager());
Tab = (ViewPager)findViewById(R.id.pager);
Tab.setOnPageChangeListener(
new ViewPager.SimpleOnPageChangeListener() {
@Override
public void onPageSelected(int position) {
actionBar = getActionBar();
actionBar.setSelectedNavigationItem(position); }
});
Tab.setAdapter(TabAdapter);
actionBar = getActionBar();
//Enable Tabs on Action Bar
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS);
ActionBar.TabListener tabListener = new ActionBar.TabListener(){
@Override
public void onTabReselected(android.app.ActionBar.Tab tab,
FragmentTransaction ft) {
// TODO Auto-generated method stub
}
@Override
public void onTabSelected(ActionBar.Tab tab, FragmentTransaction ft) {
Tab.setCurrentItem(tab.getPosition());
}
@Override
public void onTabUnselected(android.app.ActionBar.Tab tab,
FragmentTransaction ft) {
// TODO Auto-generated method stub
}};
//Add New Tab
actionBar.addTab(actionBar.newTab().setText("Android").setTabListener(tabListener));
actionBar.addTab(actionBar.newTab().setText("iOS").setTabListener(tabListener));
actionBar.addTab(actionBar.newTab().setText("Windows").setTabListener(tabListener));
}
}
现在这是教程代码
import { BarChart } from 'react-native-chart-android';
{...}
render() {
return (
<BarChart style={{flex: 1}} data={this.getDate()} />
);
}
{...}
在使用不同类扩展的MainActivity中查看。我问如何将教程与我的代码集成。
答案 0 :(得分:0)
您可能希望将TabLayout
与ViewPager
一起使用。
这是一个简单的例子,您可以开始使用它,也许可以帮助您更好地了解它的工作原理。
在MainActivity
setContentView(R.layout.tabbed_activity)
中,您将在onCreate()
中致电<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</LinearLayout>
。
xml看起来像这样:
MainActivity
然后在onCreate
中,您将在mTabLayout = (TabLayout) findViewById(R.id.tab_layout);
mViewPager = (ViewPager) findViewById(R.id.view_pager);
中初始化这些小部件:
public class ViewPagerTabsAdapter extends FragmentPagerAdapter {
private List<String> mTabTitles;
private List<Fragment> mFragments;
public ViewPagerTabsAdapter(FragmentManager fm) {
super(fm);
mTabTitles = new ArrayList<>();
mFragments = new ArrayList<>();
}
@Override
public Fragment getItem(int position) {
return mFragments.get(position);
}
@Override
public int getCount() {
return mFragments.size();
}
@Override
public CharSequence getPageTitle(int position) {
return mTabTitles.get(position);
}
public void addTab(int pos, String title, Fragment fragment) {
mTabTitles.add(pos, title);
mFragments.add(pos, fragment);
}
}
对于此视图寻呼机,您将需要一个适配器来处理选项卡(在本例中为片段):
MainActivity#onCreate
然后在您的public class MainActivity extends AppCompatActivity {
private ViewPager mViewPager;
private TabLayout mTabLayout;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.tabbed_activity);
mTabLayout = (TabLayout) findViewById(R.id.tab_layout);
mViewPager = (ViewPager) findViewById(R.id.view_pager);
ViewPagerTabsAdapter pagerAdapter = new ViewPagerTabsAdapter(getSupportFragmentManager());
pagerAdapter.addTab(0, "Tab 1", new Fragment());
pagerAdapter.addTab(1, "Tab 2", new Fragment());
mViewPager.setAdapter(pagerAdapter);
mTabLayout.setupWithViewPager(mViewPager);
}
}
中,您将标签(片段)添加到适配器,然后将其设置为全部:
Timeout
你说你是初学者但是这里有一个教程,它带你了解很多相关内容。我想如果你仔细阅读它,你将设法解决你的问题。 http://www.androidhive.info/2015/09/android-material-design-working-with-tabs/
但你可能还应该阅读一些有关活动和片段的内容。 https://developer.android.com/guide/components/activities.html