天天看點

安卓菜鳥的進階之路-自定義控件

1. 建立自定義控件

public class TitleLayout extends LinearLayout {            

    public TitleLayout(Context context, AttributeSet attrs){

        super(context,attrs);

        LayoutInflater.from(context).inflate(R.layout.title,this);//動态加載布局檔案,inflate加載兩個參數,要加載的布局檔案和父布局

        Button titleBack = (Button)findViewById(R.id.title_back);//該按鈕為所加載的布局檔案中的按鈕

        Button titleEdit = (Button)findViewById(R.id.title_edit);

        titleBack.setOnClickListener(new OnClickListener(){//為按鈕設定監聽事件

            @Override

            public void onClick(View v){

                ((Activity) getContext()).finish();//銷毀目前活動

            }

        });

        titleEdit.setOnClickListener(new OnClickListener(){

            @Override

            public void onClick(View v){

                Toast.makeText(getContext(),"you clicked EditButton",Toast.LENGTH_SHORT).show();

            }

        });

    }

2.添加自定義控件

<com.example.a15534.uiwidgettest.TitleLayout//需指出完整類名

        android:layout_height="wrap_content"

        android:layout_width="match_parent"/>