健康栏目的实现
2016-12-04 09:56
351 查看
activity_main.xml的代码如下所示:
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) {
}
});
}
}
具体的
<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) {
}
});
}
}
具体的
相关文章推荐
- Noip2016day1 玩具迷题toy
- .Net多线程编程—System.Threading.Tasks.Parallel
- ImageBrowser
- 矩阵输出
- 其实昨天去加班也没有干什么事情,就只有3个人
- 多重继承
- 水面无人艇局部危险避障算法研究 参考文献
- HDU 2045 不容易系列之(3)—— LELE的RPG难题
- 12 14
- 柴静采访剑桥大学校长乐思哲
- JSONObject/JSONArray的区别
- SQL---视图
- 设置Tomcat监听80端口
- 字符串各进制之间的转换
- 柴静采访剑桥大学校长乐思哲
- 26个提升java性能需要注意的地方
- linux socket通信源码
- 浅谈机器人控制与仿真设计----RDS和ROS
- 浪潮不能进bios解决过程
- HTML页面禁用Enter键自动提交表单