activitv_main-------------------------------------------------------------------------------
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="maxinawei.bw.com.day9demo1.MainActivity"> <HorizontalScrollView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/hor"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" android:id="@+id/line"> </LinearLayout> </HorizontalScrollView> <android.support.v4.view.ViewPager android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/pager" android:layout_below="@+id/hor" > </android.support.v4.view.ViewPager> </RelativeLayout>
mainActivity____________________________________________________________________________
public class MainActivity extends AppCompatActivity { private List<String> Menus = new ArrayList<>(); private HorizontalScrollView hor; private List<TextView> listmeuns; private LinearLayout line; private ViewPager pager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); line = findViewById(R.id.line); hor = findViewById(R.id.hor); pager=findViewById(R.id.pager); //初始化 initMenus(); //添加 addMenus(); MyAdapter adapter=new MyAdapter(getSupportFragmentManager()); pager.setAdapter(adapter); } class MyAdapter extends FragmentPagerAdapter{ public MyAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { Fragement1 fragement1=new Fragement1(); return fragement1; } @Override public int getCount() { return Menus.size(); } } private void addMenus() { for (int i = 0; i < Menus.size(); i++) { TextView textView= new TextView(this); textView.setText(Menus.get(i)); if (i==0){ textView.setTextColor(Color.RED); }else{ textView.setTextColor(Color.BLACK); } textView.setTag(i); textView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { setSelectMenu(Integer.parseInt(view.getTag()+"")); } }); LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,LinearLayout.LayoutParams.WRAP_CONTENT); params.setMargins(5,5,10,10); line.addView(textView,params); listmeuns.add(textView); } } private void initMenus() { listmeuns=new ArrayList<TextView>(); Menus.add("新闻"); Menus.add("娱乐"); Menus.add("社会"); Menus.add("体育"); Menus.add("健康"); Menus.add("财经"); Menus.add("汽车"); Menus.add("科技"); Menus.add("军事"); Menus.add("小说"); Menus.add("绯闻"); Menus.add("汽车1"); Menus.add("科技1"); Menus.add("军事1"); Menus.add("小说1"); Menus.add("绯闻1"); } public void setSelectMenu(int tvIndex) { for (int i = 0; i <listmeuns.size() ; i++) { if (i==tvIndex){ listmeuns.get(i).setTextColor(Color.RED); }else { listmeuns.get(i).setTextColor(Color.BLACK); } } } }