package com.tabtest;
import android.app.ActivityGroup;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.view.Window;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
import android.widget.LinearLayout;
public class TabTestActivity extends ActivityGroup {
private GridView gvTopBar;
private ImageAdapter topImgAdapter;
public LinearLayout container;// 装载sub Activity的容器
/** 顶部按钮图片 **/
int[] topbar_image_array = { R.drawable.tab_weixin_normal,
R.drawable.tab_address_normal, R.drawable.tab_find_frd_normal,
R.drawable.tab_settings_normal };
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.main);
gvTopBar = (GridView) this.findViewById(R.id.gvTopBar);
gvTopBar.setNumColumns(topbar_image_array.length);// 设置每行列数
gvTopBar.setSelector(new ColorDrawable(Color.TRANSPARENT));// 选中的时候为透明色
gvTopBar.setGravity(Gravity.CENTER);// 位置居中
gvTopBar.setVerticalSpacing(0);// 垂直间隔
int width = this.getWindowManager().getDefaultDisplay().getWidth()
/ topbar_image_array.length;
int[] selectedResId = { R.drawable.tab_weixin_pressed,
R.drawable.tab_address_pressed, R.drawable.tab_find_frd_pressed,
R.drawable.tab_settings_pressed };
topImgAdapter = new ImageAdapter(this, topbar_image_array, width, 48,
selectedResId);
gvTopBar.setAdapter(topImgAdapter);// 设置菜单Adapter
gvTopBar.setOnItemClickListener(new ItemClickEvent());// 项目点击事件
container = (LinearLayout) findViewById(R.id.Container);
SwitchActivity(0);// 默认打开第0页
}
class ItemClickEvent implements OnItemClickListener {
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3) {
SwitchActivity(arg2);
}
}
/* 根据ID打开指定的Activity */
public void SwitchActivity(int id) {
topImgAdapter.setFocus(id);// 选中项获得高亮
container.removeAllViews();// 必须先清除容器中所有的View
Intent intent = null;
if (id == 0 || id == 2) {
intent = new Intent(TabTestActivity.this, ActivityA.class);
} else if (id == 1 || id == 3) {
intent = new Intent(TabTestActivity.this, ActivityB.class);
}
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
// Activity 转为 View
Window subActivity = getLocalActivityManager().startActivity("subActivity",
intent);
// 容器添加View
container.addView(subActivity.getDecorView(), LayoutParams.FILL_PARENT,
LayoutParams.FILL_PARENT);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
高仿微信的界面 - ActivityGroup + GridView 实现Tab分页
共52个文件
png:24个
class:11个
xml:5个
5星 · 超过95%的资源 需积分: 10 127 下载量 198 浏览量
2012-08-04
17:26:09
上传
评论 3
收藏 126KB ZIP 举报
温馨提示
http://blog.csdn.net/lyl_studio/article/details/7830487 示例源码
资源推荐
资源详情
资源评论
收起资源包目录
TabTest.zip (52个子文件)
TabTest
.project 843B
project.properties 360B
proguard.cfg 1KB
src
com
tabtest
ImageAdapter.java 2KB
TabTestActivity.java 3KB
ActivityB.java 312B
ActivityA.java 312B
AndroidManifest.xml 867B
res
drawable-ldpi
ic_launcher.png 2KB
drawable-hdpi
tab_address_pressed.png 2KB
tab_find_frd_normal.png 1KB
ic_launcher.png 4KB
tab_weixin_normal.png 1KB
tab_find_frd_pressed.png 2KB
tab_address_normal.png 1KB
tab_settings_normal.png 1KB
tab_weixin_pressed.png 2KB
tab_settings_pressed.png 3KB
headerbar2.png 357B
drawable-mdpi
ic_launcher.png 3KB
layout
a.xml 281B
b.xml 281B
main.xml 1KB
values
strings.xml 180B
assets
gen
com
tabtest
R.java 1KB
.classpath 364B
bin
resources.ap_ 29KB
TabTest.apk 35KB
classes
com
tabtest
R$layout.class 423B
R$drawable.class 762B
R$attr.class 319B
TabTestActivity.class 3KB
R$id.class 398B
TabTestActivity$ItemClickEvent.class 1KB
R.class 482B
R$string.class 406B
ImageAdapter.class 2KB
ActivityB.class 494B
ActivityA.class 494B
res
drawable-ldpi
ic_launcher.png 2KB
drawable-hdpi
tab_address_pressed.png 2KB
tab_find_frd_normal.png 1KB
ic_launcher.png 4KB
tab_weixin_normal.png 1KB
tab_find_frd_pressed.png 2KB
tab_address_normal.png 1KB
tab_settings_normal.png 1KB
tab_weixin_pressed.png 2KB
tab_settings_pressed.png 3KB
headerbar2.png 362B
drawable-mdpi
ic_launcher.png 2KB
classes.dex 7KB
共 52 条
- 1
刘云龙在搞机
- 粉丝: 56
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
前往页