您的位置:首页 > 移动开发 > Android开发

Android——ViewGroup的一个用法实例(转载)

2014-10-08 10:46 134 查看
找了很久,终于找到了。

<?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>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: