健康栏目
2016-12-27 21:45
239 查看
1 package com.example.health; import java.util.List; import android.support.v4.view.PagerAdapter; import android.view.View; import android.view.ViewGroup; public class HealthViewPagerAdapter extends PagerAdapter { private List<View>viewList; public HealthViewPagerAdapter(List<View>viewList){ this.viewList=viewList; } @Override public int getCount() { // TODO Auto-generated method stub return viewList.size(); } @Override public boolean isViewFromObject(View view, Object object) { // TODO Auto-generated method stub return view==object; } @Override public Object instantiateItem(ViewGroup container, int position) { container.addView(viewList.get(position)); return viewList.get(position); } public void destroyItem(ViewGroup container, int position, Object object) { container.removeView(viewList.get(position)); } } 2 package com.example.health; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.webkit.WebView; import android.webkit.WebViewClient; public class HealthWebView { private Context context; public HealthWebView(Context context){ this.context=context; } public View getView(String url){ View view=LayoutInflater.from(context).inflate( R.layout.pagerofhealthy, null); WebView webView=(WebView) view.findViewById(R.id.wvHealth); webView.loadUrl(url); webView.getSettings().setJavaScriptEnabled(true); webView.setWebViewClient(new WebViewClient(){ public boolean shouldOverrideUrlLoading(WebView view,String url){ view.loadUrl(url); return true; } }); return view; } } 3 package com.example.health; import java.util.ArrayList; import java.util.List; import android.annotation.SuppressLint; import android.app.ActionBar.LayoutParams; import android.app.Activity; import android.os.Bundle; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener; import android.util.DisplayMetrics; import android.view.Display; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.TextView; public class MainActivity extends Activity { private int currIndex; private TextView tvCursor; private TextView tvHealthNews; private TextView tvIllnessDefense; private ViewPager vpHealth; private ImageView ivHealthBack; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initViews(); initCursor(); initViewPager(); setListeners(); } private void initViews() { ivHealthBack=(ImageView) findViewById(R.id.icon_health_back); tvCursor=(TextView) findViewById(R.id.cursor); tvHealthNews=(TextView) findViewById(R.id.tv_healthnews); tvIllnessDefense=(TextView) findViewById(R.id.tv_healthill); vpHealth=(ViewPager) findViewById(R.id.viewpager); } @SuppressLint("NewApi") private void initCursor() { Display display=getWindow().getWindowManager().getDefaultDisplay(); DisplayMetrics metrics=new DisplayMetrics(); display.getMetrics(metrics); int tabLineLength=metrics.widthPixels/2; LayoutParams lp=(LayoutParams) tvCursor.getLayoutParams(); lp.width=tabLineLength; tvCursor.setLayoutParams(lp); } private void initViewPager() { vpHealth=(ViewPager) findViewById(R.id.viewpager); List<View>views=new ArrayList<View>(); views.add(new HealthWebView(this).getView("http://cms.hxky.cn/wap/jkxz")); views.add(new HealthWebView(this).getView("http://cms.hxky.cn/wap/jbfz")); vpHealth.setAdapter(new HealthViewPagerAdapter(views)); vpHealth.setCurrentItem(0); } private void setListeners() { ivHealthBack.setOnClickListener(new OnClickListener(){ public void onClick(View arg0){ finish(); } }); tvHealthNews.setOnClickListener(new OnClickListener(){ @Override public void onClick(View view) { vpHealth.setCurrentItem(0); } }); tvIllnessDefense.setOnClickListener(new OnClickListener(){ @Override public void onClick(View view) { // TODO Auto-generated method stub vpHealth.setCurrentItem(1); } }); vpHealth.setOnPageChangeListener(new OnPageChangeListener(){ public void onPageSelected(int position){ currIndex=position; } public void onPageScrolled(int position,float percent,int ag2){ LinearLayout.LayoutParams ll=(android.widget.LinearLayout.LayoutParams)tvCursor.getLayoutParams(); if(currIndex==position){ ll.leftMargin=(int)(currIndex*tvCursor.getWidth()+ percent*tvCursor.getWidth()); }else if(currIndex>position){ ll.leftMargin=(int)(currIndex*tvCursor.getWidth()- (1-percent)*tvCursor.getWidth()); } tvCursor.setLayoutParams(ll); } public void onPageScrollStateChanged(int position){ } }); } } 4 <?xml version="1.0" encoding="utf-8"?> <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=".HealthActivity"> <include layout="@layout/healty_layout_titlebar"/> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <!-- 健康新知 --> <TextView android:id="@+id/tv_healthnews" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_weight="1" android:gravity="center" android:padding="6dp" android:text="健康新知" android:textSize="18sp"/> <!-- 疾病防治 --> <TextView android:id="@+id/tv_healthill" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_weight="1" android:gravity="center" android:padding="6dp" android:text="疾病防治" android:textSize="18sp"/> </LinearLayout> <TextView android:id="@+id/cursor" android:layout_width="125dp" android:layout_height="5dp" android:layout_marginLeft="20dp" android:background="#990033"/> <android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="match_parent"/> </LinearLayout> 5 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layo 4000 ut_height="wrap_content" android:background="@drawable/titlebar_bg" > <ImageView android:id="@+id/icon_health_back" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:gravity="center" android:paddingLeft="6dp" android:src="@drawable/icons_health_back"/> <TextView android:id="@+id/title" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_weight="1" android:gravity="center" android:text="健康" android:textColor="#ffffff" android:textSize="15sp"/> </LinearLayout> 6 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.health" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" android:targetSdkVersion="18" /> <application android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/AppTheme" > <activity android:name="com.example.health.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>