package com.exbawei.liteli.dibu; import android.app.Dialog; import android.content.Context; import android.view.Gravity; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.view.Window; /** * Created by li te li on 2017/12/5. */ public class MyDialog extends Dialog implements OnClickListener { public MyDialog(Context context) { super(context); setContentView(R.layout.photo); Window window = getWindow(); window.setLayout(ViewGroup.LayoutParams.FILL_PARENT,ViewGroup.LayoutParams.WRAP_CONTENT); window.setGravity(Gravity.BOTTOM); setCanceledOnTouchOutside(true); findViewById(R.id.btn_camera).setOnClickListener(this); findViewById(R.id.btn_gallery).setOnClickListener(this); findViewById(R.id.btn_cancel).setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btn_camera: onButton.camera(); break; case R.id.btn_cancel: onButton.cancel(); break; case R.id.btn_gallery: onButton.gallery(); break; } } private OnButton onButton; public OnButton getOnButton(){ return onButton; } public void setOnButton(OnButton onButton){ this.onButton=onButton; } public interface OnButton{ void camera(); void cancel(); void gallery(); } } --------------------------------package com.exbawei.liteli.dibu; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends AppCompatActivity { private MyDialog myDialog; private Button bu; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); bu = (Button) findViewById(R.id.bu); bu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { myDialog = new MyDialog(MainActivity.this); myDialog.show(); myDialog.setOnButton(new MyDialog.OnButton() { @Override public void camera() { myDialog.cancel(); Toast.makeText(MainActivity.this,"camera",Toast.LENGTH_LONG).show(); } @Override public void cancel() { myDialog.dismiss(); Toast.makeText(MainActivity.this,"cancel",Toast.LENGTH_LONG).show(); } @Override public void gallery() { myDialog.cancel(); Toast.makeText(MainActivity.this,"gallery",Toast.LENGTH_LONG).show(); } }); } }); } }<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <LinearLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="vertical" android:padding="20dp"> <TextView android:id="@+id/btn_camera" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="18sp" android:textColor="#0f0f0f" android:text="拍照" android:shadowDx="0.5" android:shadowDy="0.5" android:shadowRadius="0.5" android:shadowColor="#ffffff" android:layout_marginBottom="10dp" android:padding="10dp" android:gravity="center"/> <TextView android:id="@+id/btn_gallery" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="18sp" android:textColor="#0f0f0f" android:text="从相册中选择" android:shadowDx="0.5" android:shadowDy="0.5" android:shadowRadius="0.5" android:shadowColor="#ffffff" android:layout_marginBottom="10dp" android:padding="10dp" android:gravity="center"/> <TextView android:id="@+id/btn_cancel" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="18sp" android:text="取消" android:shadowDx="0.5" android:shadowDy="0.5" android:shadowRadius="0.5" android:shadowColor="#000000" android:layout_marginTop="10dp" android:padding="10dp" android:gravity="center"/> </LinearLayout> </LinearLayout>
底部对话框吐司
最新推荐文章于 2022-09-13 22:20:48 发布