Android 复用自制的控件(2)

package com.inrayfitness.widget;

import com.inrayfitness.R;

import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;

public class FootView {
	private Button back;
	private Context context;
	private TextView topViewTitle;

	public FootView(Context context) {
		this.context = context;

	}

	public FootView init(View view) {
		topViewTitle = (TextView) view.findViewById(R.id.topViewTitle);
		back = (Button) view.findViewById(R.id.button_back);
		back.setOnClickListener(listener);
		return this;

	}

	public FootView setTitle(String title) {
		topViewTitle.setText(title);
		return this;

	}

	private OnClickListener listener = new OnClickListener() {

		@Override
		public void onClick(View v) {
			switch (v.getId()) {

			case R.id.button_back:
				((Activity) context).finish();
				break;

			default:
				break;
			}

		}
	};

	private void gotoIntent(Class<?> cls) {
		((Activity) context).finish();
		Intent intent = new Intent(context, cls);
		context.startActivity(intent);

	}

}
<?xml version="1.0" encoding="UTF-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/noradius_border"
    android:orientation="horizontal" >

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_centerVertical="true"
        android:gravity="center_vertical"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/button_back"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/backimagebutton_style"
            android:paddingLeft="20px" />

        <TextView
            android:id="@+id/topViewTitle"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_weight="3"
            android:gravity="center_vertical|center_horizontal"
            android:textColor="#FFFFFF"
            android:textSize="10pt" />

        <Button
            android:id="@+id/button_share"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/compimagebutton_style"
            android:paddingRight="20px"
            android:visibility="gone" />
    </LinearLayout>

</RelativeLayout>

调用方法


在setContentView后 添加

new FootView(context).init(this.findViewById(R.id.header)).setTitle("这里显示标题");/


posted @ 2012-08-30 17:45  sfshine  阅读(232)  评论(0编辑  收藏  举报