顶部导航栏目
2016-06-27 08:35
211 查看
------------------------------------------------------主界面MainActivity--------------------------------------------------
package com.example.topline;
import com.astuetz.PagerSlidingTabStrip;
import com.example.topline.fragment.BaseFragment;
import android.os.Bundle;
import android.app.Activity;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.Menu;
public class MainActivity extends FragmentActivity {
String til[] = { "推荐", "热点", "北京", "视屏", "社会", "科技","新闻" };
private PagerSlidingTabStrip ps;
private ViewPager vp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ps = (PagerSlidingTabStrip) findViewById(R.id.tab);
vp = (ViewPager) findViewById(R.id.vp);
vp.setAdapter(new MyfragmentAdapter(getSupportFragmentManager()));
ps.setViewPager(vp);
}
class MyfragmentAdapter extends FragmentPagerAdapter{
public MyfragmentAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int arg0) {
return BaseFragment.getInstance(til[arg0]);
}
@Override
public int getCount() {
return til.length;
}
@Override
public CharSequence getPageTitle(int position) {
return til[position];
}
}
}
--------------------------------------------------------------------------Fragment---------------------------------------------------------------------------
package com.example.topline.fragment;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
public class BaseFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
TextView tv=new TextView(getActivity());
Bundle arguments = getArguments();
String st = arguments.getString("info");
tv.setText(st);
return tv;
}
public static Fragment getInstance(String info) {
BaseFragment baseFragment=new BaseFragment();
Bundle bundle=new Bundle();
bundle.putString("info", info);
baseFragment.setArguments(bundle);
return baseFragment;
}
}
-------------------------------------------------------------------布局-------------------------------------------
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.astuetz.PagerSlidingTabStrip
android:id="@+id/tab"
android:layout_width="match_parent"
android:layout_height="40dp" />
<android.support.v4.view.ViewPager
android:id="@+id/vp"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</android.support.v4.view.ViewPager>
</LinearLayout>
----------------------------关联PagerSlidingTabStripLib--------------------------------------
package com.example.topline;
import com.astuetz.PagerSlidingTabStrip;
import com.example.topline.fragment.BaseFragment;
import android.os.Bundle;
import android.app.Activity;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.view.Menu;
public class MainActivity extends FragmentActivity {
String til[] = { "推荐", "热点", "北京", "视屏", "社会", "科技","新闻" };
private PagerSlidingTabStrip ps;
private ViewPager vp;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ps = (PagerSlidingTabStrip) findViewById(R.id.tab);
vp = (ViewPager) findViewById(R.id.vp);
vp.setAdapter(new MyfragmentAdapter(getSupportFragmentManager()));
ps.setViewPager(vp);
}
class MyfragmentAdapter extends FragmentPagerAdapter{
public MyfragmentAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int arg0) {
return BaseFragment.getInstance(til[arg0]);
}
@Override
public int getCount() {
return til.length;
}
@Override
public CharSequence getPageTitle(int position) {
return til[position];
}
}
}
--------------------------------------------------------------------------Fragment---------------------------------------------------------------------------
package com.example.topline.fragment;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
public class BaseFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
TextView tv=new TextView(getActivity());
Bundle arguments = getArguments();
String st = arguments.getString("info");
tv.setText(st);
return tv;
}
public static Fragment getInstance(String info) {
BaseFragment baseFragment=new BaseFragment();
Bundle bundle=new Bundle();
bundle.putString("info", info);
baseFragment.setArguments(bundle);
return baseFragment;
}
}
-------------------------------------------------------------------布局-------------------------------------------
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<com.astuetz.PagerSlidingTabStrip
android:id="@+id/tab"
android:layout_width="match_parent"
android:layout_height="40dp" />
<android.support.v4.view.ViewPager
android:id="@+id/vp"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</android.support.v4.view.ViewPager>
</LinearLayout>
----------------------------关联PagerSlidingTabStripLib--------------------------------------
相关文章推荐
- WebView的用法
- 不同的浏览器都能显示好看的字体
- js编写一个简单的产品放大效果代码
- 初学CentOS——shell基本命令
- Android内存优化
- webView
- Tomcat 配置SSL,以及Tomcat CA证书制作和安装
- Unity 优化1
- 华生详解万科董事会:我为什么不支持大股东意见(上)
- solr部署
- Lambda表达式注意事项
- 山峰(codevs 1531)
- Android 点击实现打电话
- Pull解析网络请求文件
- oracle 聚簇因子的一些理解
- Android中 File存储
- 背水一战 Windows 10 (19) - 绑定: TemplateBinding 绑定, 与 RelativeSource 绑定, 与 StaticResource 绑定
- 自定义ListView,实现下拉刷新,上拉加载
- 百度地图基本地图和定位
- APP测试体系