抽取dialog的基類

public class AddGoodsDialog extends BaseDialog {

    private String barcode;

    public AddGoodsDialog(Context context) {
        super(context);
        initView();
    }

    public void initView() {
        View contentView = LayoutInflater.from(mContext).inflate(R.layout.dialog_add_goods, null);
        ButterKnife.bind(this, contentView);
        setContentView(contentView);
        setCancelable(false);
    }


    public void show(String barcode) {
        super.show();
        this.barcode = barcode;
    }

    @OnClick({R.id.ll_close_window, R.id.cancel, R.id.ok})
    public void OnClick(View view) {
        switch (view.getId()) {
            case R.id.ll_close_window:
            case R.id.cancel:
                dismiss();
                break;
            case R.id.ok:
                Intent intent = new Intent(mContext, AddGoodEditActivity.class);
                intent.putExtra("barcode", barcode);
                mContext.startActivity(intent);
                dismiss();
                break;
            default:
                break;
        }
    }
}

自定義dialog繼承BaseDialog即可。以下是dialog的樣式

<style name="loading_dialog" parent="@android:style/Theme.Dialog">
    <item name="android:windowFrame">@android:color/transparent</item><!--邊框-->
    <item name="android:windowIsFloating">true</item><!--是否浮現在activity之上-->
    <item name="android:windowIsTranslucent">true</item><!--半透明-->
    <item name="android:windowNoTitle">true</item><!--無標題-->
    <item name="android:windowBackground">@color/transparent</item><!--背景透明-->
    <item name="android:windowAnimationStyle">@null</item>
</style>

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章