引入布局可以使布局統一,但如果布局中有控制項要能夠響應事件,我們還是需要在每個活動中對控制項進行事件的註冊。
我們可以使用自定義控制項的方式解決
新建titlelayout 類並繼承linearlayout,
package com.example.layouttest;
import android.content.context;
import android.util.attributeset;
import android.view.layoutinflater;
import android.view.view;
import android.view.view.onclicklistener;
import android.view.window;
import android.widget.button;
import android.widget.linearlayout;
import android.widget.toast;
public
class
titlelayout
extends
linearlayout
implements
onclicklistener
@override
public
void
onclick(view v)
}}
複寫具有兩個引數的構造方法,在布局中引入tilelayout控制項就會呼叫該構造方法,需要在建構函式中對標題欄布局進行動態載入
通過layoutinflater.from(context context) 構造乙個layoutinflater物件
通過inflate()方法動態載入乙個布局檔案,inflate()有兩個引數,第乙個引數為需要載入的布局檔案id,第二個引數是給載入好的布局加乙個父布局。
然後在布局檔案中新增這個自定義控制項。
在layout.xml中新增自定義的控制項:
.example
.layouttest
.titlelayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
注意:新增自定義的控制項必須指明完整的類名。 建立自定義控制項
在前一篇文章中 中,我將乙個公共視窗控制項進行了之類劃分,目的是為了修飾其行為或者說是擴充套件其功能。有時候,你只能將公共視窗控制項擴充套件到這樣的底部。我遇到的乙個例子是乙個比較普遍的話題即需要乙個格網控制項並且編輯tabular資料。我對clistctrl進行了之類劃分,並擴充套件使其能夠進行子...
建立web自定義控制項
建立asp.net web自定義控制項 例程1 web自定義控制項程式設計是asp.net程式設計裡面比較難的一部分,尤其是複雜的控制項需要用到平常不常用的一些技術技巧。下面根據一些我自己的實踐經驗,向讀者介紹一下這方面的技術。簡單的繼承控制項 confirmbutton 我們在用asp.net編寫...
建立Web自定義控制項
控制項中方法的實現與任何其他元件中方法的實現方式相同。在 visual basic 中,如果要求方法返回乙個值,則方法以public function形式實現 如果不要求返回值,則以public sub形式實現。使用下列語法宣告方法 visual basic public function conv...