您的位置:首页 > 其它

健康栏目的实现

2016-12-04 09:56 351 查看
activity_main.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=".HealthActivity" >
<include
layout="@layout/health_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="@string/healthnews"
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="@string/illdefense"
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>


 health_layout_titlebar 布局文件,主要代码如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
android:background="@drawable/titlebar_bg" >
<ImageView
android:id="@+id/icons_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>
 

HealthActivity .java的代码如下
public class HealthActivity extends Activity { private int currIndex;// 当前页卡编号 private TextView tvCursor;
private TextView tvHealthNews; private TextView tvIllnessDefense;
 private ViewPager vpHealth; private ImageView ivHealthBack;

@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_health);
 initViews();
initCursor();
 initViewPager();
 setListeners();
}

private void initViews() {
ivHealthBack = (ImageView) findViewById(R.id.ivHealthBack);
tvCursor = (TextView) findViewById(R.id.cursor);
 tvHealthNews = (TextView) findViewById(R.id.tv_healthnews);

tvIllnessDefense = (TextView) findViewById(R.id.tv_IllDefense);
 vpHealth = (ViewPager) findViewById(R.id.viewpager);
}

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() {

@Override
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) {
vpHealth.setCurrentItem(1);
}
}

);

vpHealth.setOnPageChangeListener(new OnPageChangeListener() {

@Override
public void onPageSelected(int position) { currIndex = position;
}

@Override
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);

}

@Override
public void onPageScrollStateChanged(int position) {

}
});
}
}


具体的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: