如何制作自定义视图(imageview + progressbar)?

时间:2014-08-29 13:19:31

标签: android

我想在imageView上显示进度条。如果我做的话,Gennerally很好用:

<RelativeLayout
        android:id="@+id/image_holder"
        android:layout_width="120dip"
        android:layout_height="120dip"
        android:layout_gravity="center"
        android:layout_marginLeft="16dip"
        android:layout_marginRight="16dip"
        android:layout_marginTop="22dip" >

        <ImageView
            android:id="@+id/im_photo"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:scaleType="centerCrop" />

        <ProgressBar
            android:id="@+id/progressbar1"
            android:layout_width="match_parent"
            android:visibility="gone"
            android:layout_height="match_parent" />
    </RelativeLayout>

是否可以将其与单个小部件组合?

1 个答案:

答案 0 :(得分:0)

是的,你可以,只需创建一个扩展RelativeLayout的新类并像这样膨胀它:

public class MyView extends RelativeLayout {
    public MyView(Context context) {
        super(context);
        init();
    }

    public MyView(Context context, AttributeSet attrs) {
        super(context, attrs);
        init();

    }

    public MyView(Context context, AttributeSet attrs, int defStyle) {
        super(context, attrs, defStyle);
        init();

    }

    private void init() {
        inflate(getContext(), R.layout.myLayout, this);
        //Create your layout here
    }
}