日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android-仿QQtab

發布時間:2025/5/22 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android-仿QQtab 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.




<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/root" android:layout_width="fill_parent" android:layout_height="fill_parent" > <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@drawable/default_bg" > <LinearLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="6.0" > <RelativeLayout android:id="@+id/layout1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0" android:layout_gravity="center_vertical" > <ImageView android:id="@+id/tab1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/tab1" android:layout_centerInParent="true" /> </RelativeLayout> <RelativeLayout android:id="@+id/layout2" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0" android:layout_gravity="center_vertical" > <ImageView android:id="@+id/tab2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/tab2" android:layout_centerInParent="true" /> </RelativeLayout> <RelativeLayout android:id="@+id/layout3" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_weight="1.0" android:layout_gravity="center_vertical" > <ImageView android:id="@+id/tab3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/tab3" android:layout_centerInParent="true" /> </RelativeLayout> </LinearLayout> <RelativeLayout android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1.0" android:background="#ffffff" android:gravity="center" > <TextView android:id="@+id/text" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="" android:textColor="#000fff" android:textSize="20dip" android:layout_centerInParent="true" android:layout_marginLeft="15dip" /> </RelativeLayout> </LinearLayout> </RelativeLayout>
import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.animation.TranslateAnimation; import android.widget.ImageView; import android.widget.RelativeLayout; import android.widget.RelativeLayout.LayoutParams; import android.widget.TextView; public class QQTabActivity extends Activity { /** Called when the activity is first created. */ private RelativeLayout layout; private RelativeLayout layout1; private RelativeLayout layout2; private RelativeLayout layout3; private TextView text; private ImageView tab1; private ImageView tab2; private ImageView tab3; private ImageView first; private int current = 1; // 默認選中第一個,可以動態的改變此參數值 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); initUI(); } private void initUI(){ layout = (RelativeLayout) findViewById(R.id.root); layout1 = (RelativeLayout) findViewById(R.id.layout1); layout2 = (RelativeLayout) findViewById(R.id.layout2); layout3 = (RelativeLayout) findViewById(R.id.layout3); tab1 = (ImageView) findViewById(R.id.tab1); tab2 = (ImageView) findViewById(R.id.tab2); tab3 = (ImageView) findViewById(R.id.tab3); text = (TextView) findViewById(R.id.text); tab1.setOnClickListener(listener); tab2.setOnClickListener(listener); tab3.setOnClickListener(listener); RelativeLayout.LayoutParams rl = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); rl.addRule(RelativeLayout.CENTER_IN_PARENT,RelativeLayout.TRUE); first = new ImageView(this); first.setTag("first"); first.setImageResource(R.drawable.topbar_select); switch (current) { case 1: layout1.addView(first,rl); current = R.id.tab1; text.setText("最近聯系人"); break; case 2: layout2.addView(first,rl); current = R.id.tab2; text.setText("我的聯系人"); break; case 3: layout3.addView(first,rl); current = R.id.tab3; text.setText("我的QQ群聯系人"); break; default: break; } } private boolean isAdd = false;// 是否添加過 top_select private int select_width; // top_select_width private int select_height; // top_select_height private int firstLeft; // 第一次添加后的左邊距***** private int startLeft; // 起始左邊距 // 添加一個view,移除一個view private void replace(){ switch (current) { case R.id.tab1: changeTop(layout1); break; case R.id.tab2: changeTop(layout2); break; case R.id.tab3: changeTop(layout3); break; default: break; } } private void changeTop(RelativeLayout relativeLayout){ ImageView old = (ImageView) relativeLayout.findViewWithTag("first"); select_width =old.getWidth(); select_height = old.getHeight(); RelativeLayout.LayoutParams rl = new RelativeLayout.LayoutParams(select_width, select_height); rl.leftMargin = old.getLeft()+((RelativeLayout)old.getParent()).getLeft(); rl.topMargin = old.getTop()+((RelativeLayout)old.getParent()).getTop(); // 獲取起始位置 firstLeft = old.getLeft()+((RelativeLayout)old.getParent()).getLeft(); ImageView iv = new ImageView(this); iv.setTag("move"); iv.setImageResource(R.drawable.topbar_select); layout.addView(iv,rl); relativeLayout.removeView(old); } private OnClickListener listener = new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub if(!isAdd){ replace();// // 初次使用移除old 添加新的top_select為RelativeLayout所使用 isAdd = true; } ImageView top_select = (ImageView) layout.findViewWithTag("move"); int tabLeft = 0; int endLeft=0; boolean run = false; switch (v.getId()) { case R.id.tab1: if(current!=R.id.tab1) {// 中心位置 tabLeft = ((RelativeLayout)tab1.getParent()).getLeft()+tab1.getLeft()+tab1.getWidth()/2; // 最終位置 endLeft = tabLeft-select_width/2; current = R.id.tab1; run = true; text.setText("最近聯系人"); } break; case R.id.tab2: if(current!=R.id.tab2){ // 中心位置 tabLeft = ((RelativeLayout)tab2.getParent()).getLeft()+tab2.getLeft()+tab2.getWidth()/2; // 最終位置 endLeft = tabLeft-select_width/2; current = R.id.tab2; run = true; text.setText("我的聯系人"); } break; case R.id.tab3: if(current!=R.id.tab3){ // 中心位置 tabLeft = ((RelativeLayout)tab3.getParent()).getLeft()+tab3.getLeft()+tab3.getWidth()/2; // 最終位置 endLeft = tabLeft-select_width/2; current = R.id.tab3; run = true; text.setText("我的QQ群聯系人"); } break; default: break; } if(run){ TranslateAnimation animation = new TranslateAnimation(startLeft, endLeft-firstLeft, 0, 0);//水平移動 startLeft = endLeft -firstLeft; 重新設定起始位置 animation.setDuration(400); animation.setFillAfter(true); top_select.bringToFront(); top_select.startAnimation(animation); } } }; }

總結

以上是生活随笔為你收集整理的android-仿QQtab的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 91九色在线视频 | 91看片黄 | 精品免费视频一区二区 | 一级做a免费视频 | 亚洲xxxx天美 | 国产91在线看 | 色婷五月 | 久久入 | 亚洲天堂伊人网 | 黄色aaaa| 毛片毛片毛片毛片毛片毛片毛片毛片毛片毛片 | 免费精品一区二区 | 免费一级黄色片 | 国产自产一区二区 | 国产拍拍视频 | 国产18禁黄网站免费观看 | 精品产国自在拍 | av免费网 | 天天射av | 国产午夜在线一区二区三区 | www亚洲国产 | 夜夜骑夜夜| 麻豆91在线| aaaa视频| 91丨九色丨蝌蚪丨老版 | 日本美女逼| 2021亚洲天堂| 国产二区在线播放 | 91欧美在线 | 自拍偷拍亚洲视频 | 久久无码视频一区 | 国产精品成人3p一区二区三区 | 欧美色资源 | 日本三级视频 | 人人澡人人透人人爽 | 青青草这里只有精品 | 少妇被又大又粗又爽毛片久久黑人 | 婷婷丁香社区 | 久久久男女 | 亚洲av综合av一区二区三区 | 黄色片小视频 | 九色国产在线 | 性欧美日本 | 麻豆精品免费观看 | 国产精品社区 | 国产精品jizz在线观看老狼 | 国产不卡视频在线播放 | jiizzyou欧美2| 少妇人妻邻居 | 人人妻人人澡人人爽精品日本 | 强乱中文字幕 | 欧美大片91 | 久久在线免费视频 | 国产一区视频免费观看 | 亚洲精品视频在线播放 | 欧美黄色特级片 | 国产日日干 | 最近中文字幕在线mv视频在线 | 蜜桃视频久久一区免费观看入口 | 国产亚洲色婷婷久久99精品91 | 男男在线观看 | 成人高清网站 | 亚洲一区二区三区高清视频 | 精品国产乱码久久久久久牛牛 | 欧美黑人性xxx猛交 少妇无套内谢久久久久 | 国产aⅴ精品 | 91在线观看喷潮 | 91精品国产欧美一区二区成人 | 亚欧美在线观看 | fee性满足he牲bbw| 无遮挡aaaaa大片免费看 | 香蕉视频2020| 亚洲一级二级片 | 黄a在线| 国产视频九色蝌蚪 | 伊伊成人 | 日本黄色免费视频 | www.youjizz.com久久| 美女脱了内裤喂我喝尿视频 | 午夜影院h | 久久久亚洲一区二区三区 | 毛片一区二区三区 | 日本一二三区在线 | 激情视频在线播放 | 国产91热爆ts人妖系列 | 国产一级影片 | 精品无码国产一区二区三区av | 91好色先生tv | 欧洲美女与动交zozzo | 一区二区三区日本视频 | 欧美另类视频 | 2023天天操 | 欧美一二在线 | 亚洲性xxx| 国产香蕉9| 色欲久久久天天天综合网精品 | caopeng在线视频 | 日本久久久久久久久 | 色中色av |