黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

Android TabSwitcher自定義控件

系統 2416 0
??? 先來看下效果:
Android TabSwitcher自定義控件

main.xml
    <?xml version="1.0" encoding="utf-8"?><linearlayout xmlns:android="http://schemas.android.com/apk/res/android"	android:orientation="vertical" android:layout_width="fill_parent"	android:layout_height="fill_parent" android:background="#ffffff">	<linearlayout xmlns:android="http://schemas.android.com/apk/res/android"		android:id="@+id/tab" android:orientation="vertical"		android:layout_width="fill_parent" android:layout_height="wrap_content"		android:background="#ffffff">	</linearlayout></linearlayout>
  


tabswitcher.java
    package com.iaiai.activity;import android.content.context;import android.graphics.color;import android.view.gravity;import android.view.view;import android.widget.linearlayout;import android.widget.textview;/** *  * <p> * title: tabswitcher.java * </p> * <p> * e-mail: 176291935@qq.com * </p> * <p> * qq: 176291935 * </p> * <p> * http: iaiai.iteye.com * </p> * <p> * create time: 2011-8-11 * </p> *  * @author 丸子 * @version 0.0.1 */public class tabswitcher extends linearlayout {	private context context;	private string[] texts;	private int selectedposition = 0;	private int oldposition = selectedposition;	private int[] background = { r.drawable.tabswitcher_short,			color.transparent };	private textview[] tvs;	public tabswitcher(context context, string[] texts) {		super(context);		this.texts = texts;		this.context = context;		setorientation(horizontal);		linearlayout.layoutparams params = new linearlayout.layoutparams(				linearlayout.layoutparams.fill_parent,				linearlayout.layoutparams.wrap_content);		setlayoutparams(params);		setbackgroundresource(r.drawable.tabswitcher_long);	}	@override	protected void onfinishinflate() {		// todo auto-generated method stub		super.onfinishinflate();		tvs = new textview[texts.length];		linearlayout.layoutparams params = new linearlayout.layoutparams(				linearlayout.layoutparams.fill_parent,				linearlayout.layoutparams.wrap_content);		params.weight = 1;		params.gravity = gravity.center_vertical;		for (int i = 0; i < texts.length; i++) {			textview child = new textview(context);			child.settag(i);			child.settextsize(16);			child.settextcolor(color.black);			child.setgravity(gravity.center);			tvs[i] = child;			child.setonclicklistener(listener);			this.addview(child, params);		}	}	onclicklistener listener = new onclicklistener() {		@override		public void onclick(view v) {			selectedposition = (integer) v.gettag();			if (selectedposition != oldposition) {				tvs[oldposition].setbackgroundcolor(background[1]);				oldposition = selectedposition;				((textview) v).setbackgroundresource(background[0]);				if (onitemclicklisener != null) {					onitemclicklisener.onitemclicklisener(v, selectedposition);				}			}		}	};	@override	protected void onsizechanged(int w, int h, int oldw, int oldh) {		super.onsizechanged(w, h, oldw, oldh);		oldposition = selectedposition;		for (int i = 0; i < texts.length; i++) {			tvs[i].settext(texts[i]);			if (selectedposition == i) {				tvs[i].setbackgroundresource(background[0]);			} else {				tvs[i].setbackgroundcolor(background[1]);			}		}	}	private onitemclicklisener onitemclicklisener;	public void setonitemclicklisener(onitemclicklisener onitemclicklisener) {		this.onitemclicklisener = onitemclicklisener;	}	public interface onitemclicklisener {		void onitemclicklisener(view view, int position);	}	public void settexts(string[] texts) {		this.texts = texts;	}	public void setselectedposition(int selectedposition) {		this.selectedposition = selectedposition;	}}
  


iaiaiactivity.java
    package com.iaiai.activity;import android.app.activity;import android.os.bundle;import android.view.view;import android.widget.linearlayout;import android.widget.toast;import com.iaiai.activity.tabswitcher.onitemclicklisener;/** *  * <p> * title: iaiaiactivity.java * </p> * <p> * e-mail: 176291935@qq.com * </p> * <p> * qq: 176291935 * </p> * <p> * http: iaiai.iteye.com * </p> * <p> * create time: 2011-8-11 * </p> *  * @author 丸子 * @version 0.0.1 */public class iaiaiactivity extends activity {	@override	public void oncreate(bundle savedinstancestate) {		super.oncreate(savedinstancestate);		setcontentview(r.layout.main);		tabswitcher tabswitcher = new tabswitcher(this, new string[] { "1",				"2", "3", "4" });		tabswitcher.setselectedposition(1);		tabswitcher.setonitemclicklisener(onitemclicklisener);		tabswitcher.onfinishinflate();				linearlayout linearlayout = (linearlayout) findviewbyid(r.id.tab);		linearlayout.addview(tabswitcher, new linearlayout.layoutparams(				linearlayout.layoutparams.fill_parent,				linearlayout.layoutparams.wrap_content));	}	onitemclicklisener onitemclicklisener = new onitemclicklisener() {		@override		public void onitemclicklisener(view view, int position) {			// todo auto-generated method stub			//			switch (position) {			case 0:			case 1:			case 2:				toast.maketext(iaiaiactivity.this,						"position clicked:" + position, toast.length_short)						.show();				break;			default:				break;			}		}	};}
  


tabswitcher_long.9.png:

tabswitcher_short.9.png:
?

Android TabSwitcher自定義控件


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論