zoukankan      html  css  js  c++  java
  • ZYJ_MainActivity

    package com.ce.yuekao2;

    import java.util.ArrayList;
    import java.util.List;

    import com.ce.adapter.VpAdapter;
    import com.ce.fragment.F1;
    import com.ce.fragment.F2;
    import com.ce.fragment.F3;
    import com.ce.fragment.F4;

    import android.os.Bundle;
    import android.annotation.SuppressLint;
    import android.app.Activity;
    import android.graphics.Color;
    import android.support.v4.app.Fragment;
    import android.support.v4.app.FragmentActivity;
    import android.support.v4.app.FragmentManager;
    import android.support.v4.view.ViewPager;
    import android.support.v4.view.ViewPager.OnPageChangeListener;
    import android.view.Menu;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.view.ViewGroup.LayoutParams;
    import android.widget.ImageView;
    import android.widget.LinearLayout;
    import android.widget.RadioButton;

    public class MainActivity extends FragmentActivity implements OnClickListener {
        String[] urls = {
                "http://www.oschina.net/action/api/news_list?catalog=1&pageIndex=",
                "http://www.oschina.net/action/api/news_list?catalog=4&pageIndex=",
                "http://www.oschina.net/action/api/blog_list?type=latest&pageIndex=",
                "http://www.oschina.net/action/api/blog_list?type=recommend&pageIndex=" };

        private RadioButton b1;
        private RadioButton b2;
        private RadioButton b3;
        private RadioButton b4;
        private LinearLayout ll;
        private ViewPager vp;

        private int width;

        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            setContentView(R.layout.activity_main);
            width = getWindowManager().getDefaultDisplay().getWidth();
            initView();
        }

        private void initView() {
            // 找到控件
            b1 = (RadioButton) findViewById(R.id.r1);
            b2 = (RadioButton) findViewById(R.id.r2);
            b3 = (RadioButton) findViewById(R.id.r3);
            b4 = (RadioButton) findViewById(R.id.r4);
            ll = (LinearLayout) findViewById(R.id.ll);
            vp = (ViewPager) findViewById(R.id.vp);

            b1.setOnClickListener(this);
            b2.setOnClickListener(this);
            b3.setOnClickListener(this);
            b4.setOnClickListener(this);

            // 给viewpager设置适配器
            setViewpager();

            // 设置游标
            setIMG();

            // 默认第一页展示的字体与游标
            b1.setTextColor(Color.GREEN);
            ll.getChildAt(0).setVisibility(View.VISIBLE);
            vp.setOnPageChangeListener(new OnPageChangeListener() {

                public void onPageSelected(int arg0) {

                    switch (arg0) {
                    case 0:

                        b1.setTextColor(Color.GREEN);
                        b2.setTextColor(Color.BLACK);
                        b3.setTextColor(Color.BLACK);
                        b4.setTextColor(Color.BLACK);
                        ll.getChildAt(0).setVisibility(View.VISIBLE);
                        ll.getChildAt(1).setVisibility(View.INVISIBLE);
                        ll.getChildAt(2).setVisibility(View.INVISIBLE);
                        ll.getChildAt(3).setVisibility(View.INVISIBLE);
                        break;
                    case 1:
                        b2.setTextColor(Color.GREEN);
                        b1.setTextColor(Color.BLACK);
                        b3.setTextColor(Color.BLACK);
                        b4.setTextColor(Color.BLACK);
                        ll.getChildAt(1).setVisibility(View.VISIBLE);
                        ll.getChildAt(0).setVisibility(View.INVISIBLE);
                        ll.getChildAt(2).setVisibility(View.INVISIBLE);
                        ll.getChildAt(3).setVisibility(View.INVISIBLE);
                        break;
                    case 2:
                        b3.setTextColor(Color.GREEN);
                        b2.setTextColor(Color.BLACK);
                        b1.setTextColor(Color.BLACK);
                        b4.setTextColor(Color.BLACK);
                        ll.getChildAt(2).setVisibility(View.VISIBLE);
                        ll.getChildAt(1).setVisibility(View.INVISIBLE);
                        ll.getChildAt(0).setVisibility(View.INVISIBLE);
                        ll.getChildAt(3).setVisibility(View.INVISIBLE);
                        break;
                    case 3:
                        b4.setTextColor(Color.GREEN);
                        b2.setTextColor(Color.BLACK);
                        b3.setTextColor(Color.BLACK);
                        b1.setTextColor(Color.BLACK);
                        ll.getChildAt(3).setVisibility(View.VISIBLE);
                        ll.getChildAt(1).setVisibility(View.INVISIBLE);
                        ll.getChildAt(2).setVisibility(View.INVISIBLE);
                        ll.getChildAt(0).setVisibility(View.INVISIBLE);
                        break;
                    }

                }

                public void onPageScrolled(int arg0, float arg1, int arg2) {
                    // TODO Auto-generated method stub

                }

                public void onPageScrollStateChanged(int arg0) {
                    // TODO Auto-generated method stub

                }
            });

        }

        @SuppressLint("NewApi")
        private void setIMG() {
            for (int i = 0; i < urls.length; i++) {

                // 创建imageview 控件
                ImageView img = new ImageView(MainActivity.this);
                img.setBackgroundResource(R.drawable.color);
                LayoutParams params = new LayoutParams(width / 4,
                        LayoutParams.WRAP_CONTENT);

                img.setVisibility(View.INVISIBLE);
                ll.addView(img, params);

            }

        }

        private void setViewpager() {

            // 创建集合
            List<Fragment> list = new ArrayList<Fragment>();

            for (int i = 0; i < urls.length; i++) {
                // 创建page页
                F1 f1 = new F1(urls[0], i);
                F2 f2 = new F2(urls[1], i);
                F3 f3 = new F3(urls[2], i);
                F4 f4 = new F4(urls[3], i);

                list.add(f1);
                list.add(f2);
                list.add(f3);
                list.add(f4);
            }

            FragmentManager fm = getSupportFragmentManager();
            // 给viewpager设置适配器
            vp.setAdapter(new VpAdapter(fm, list));
        }

        public void onClick(View v) {
            // 当点击不同的radiobutton跳转不同的页面

            switch (v.getId()) {
            case R.id.r1:
                b1.setTextColor(Color.GREEN);
                vp.setCurrentItem(0);
                break;

            case R.id.r2:
                vp.setCurrentItem(1);
                break;

            case R.id.r3:
                vp.setCurrentItem(2);
                break;

            case R.id.r4:
                vp.setCurrentItem(3);
                break;

            }

        }

    }

    xml

    <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"
        tools:context=".MainActivity" >

        <RadioGroup
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" >

            <RadioButton
                android:id="@+id/r1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="5dp"
                android:layout_weight="1"
                android:button="@null"
                android:text="资讯"
                android:textSize="24dp" />

            <RadioButton
                android:id="@+id/r2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="5dp"
                android:layout_weight="1"
                android:button="@null"
                android:text="热点"
                android:textSize="24dp" />

            <RadioButton
                android:id="@+id/r3"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="5dp"
                android:layout_weight="1"
                android:button="@null"
                android:text="博客"
                android:textSize="24dp" />

            <RadioButton
                android:id="@+id/r4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="5dp"
                android:layout_weight="1"
                android:button="@null"
                android:text="推荐"
                android:textSize="24dp" />
        </RadioGroup>

        <LinearLayout
            android:id="@+id/ll"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" >
        </LinearLayout>

        <android.support.v4.view.ViewPager
            android:id="@+id/vp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />

    </LinearLayout>

  • 相关阅读:
    继承String?
    java sizeof
    什么是java序列化,如何实现java序列化?
    负载均衡的时候如何实现相同的session被分配到同一个服务器
    如何实现session共享
    java 字符串排序
    forward和redirect的区别
    数字签名 数字证书
    找出数组中重复次数最多的元素并打印
    get和post区别
  • 原文地址:https://www.cnblogs.com/weiyangge/p/5356561.html
Copyright © 2011-2022 走看看