大学IT网 - 最懂大学生的IT学习网站! QQ资料交流群:367606806
当前位置:大学IT网 > Android技巧 > Android——ViewGroup的一个用法实例

Android——ViewGroup的一个用法实例

关键词:用法实例转载AndroidViewGroup  阅读(876) 赞(10)

[摘要]本文是对Android——ViewGroup的一个用法实例的讲解,对学习Android编程技术有所帮助,与大家分享。

找了很久,终于找到了。

<?xml version="1.0" encoding="UTF-8" ?>
<merge  xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:okCancelBar="http://schemas.android.com/apk/res/com.example.android.merge">
    <ImageView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:scaleType="center"
        android:src="@drawable/golden_gate"

    />
    <com.example.android.merge.OkCancelBar

        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:paddingTop="8dip"
        android:gravity="center_horizontal"
        android:background="#AA000000"
        okCancelBar:okLabel="Save"
        okCancelBar:cancelLabel="Don't save" 
    />
</merge>

com.example.android.merge.OkCancelBar是一个自定义的GROUP

public class OkCancelBar extends LinearLayout{

    public OkCancelBar(Context context,AttributeSet attrs){

        super(context, attrs);

        setOrientation(HORIZONTAL);

        setGravity(Gravity.CENTER);

        setWeightSum(1.0f);

        LayoutInflater.from(context).inflate(R.layout.okcancelbar,this,true);


        TypedArray array= context.obtainStyledAttributes(attrs, R.styleable.OkCancelBar,0,0);


        String text= array.getString(R.styleable.OkCancelBar_okLabel);

        if(text==null) text="Ok";

        ((Button) findViewById(R.id.okcancelbar_ok)).setText(text);
            text= array.getString(R.styleable.OkCancelBar_cancelLabel);

        if(text==null) text="Cancel";       

        ((Button) findViewById(R.id.okcancelbar_cancel)).setText(text);


        array.recycle();


    }
}

LayoutInflater.from(context).inflate(R.layout.okcancelbar,this,true);

直接从XML中得到一个VIEW加入到当前GROUP中

okcancelbar.xml:

<merge xmlns:android="http://schemas.android.com/apk/res/android">

<include layout="@layout/okcancelbar_button"  android:id="@+id/okcancelbar_ok"/>
<include  layout="@layout/okcancelbar_button" android:id="@+id/okcancelbar_cancel"/>

</merge>


相关评论