android:控件自定义-对话框

  1. 在values的styles.xml中定义对话框样式:
< style name = "HorizonDialog" parent = "@android:Theme.Dialog" >
        < item name = "android:windowFrame" > @null </ item >
        < item name = "android:windowNoTitle" > true </ item >
        < item name = "android:windowIsFloating" > true </ item >
        < item name = "android:windowContentOverlay" > @null </ item >
</ style >
  1. 自定义对话框布局

<? xml version = "1.0" encoding = "utf-8" ?>
< LinearLayout xmlns:android = " http://schemas.android.com/apk/res/android" ;
    android:layout_width = "256dip"
    android:layout_height = "wrap_content"
    android:orientation = "vertical"
    android:layout_gravity = "center"
    android:background = "#BFBFBF" >
   
    < LinearLayout
        android:layout_width = "fill_parent"
        android:layout_height = "50dip"
        android:gravity = "center"
        android:orientation = "vertical"
        android:background = "#FFFFFF"
        android:layout_marginBottom = "1dip" >
       
       < TextView
          android:layout_width = "wrap_content"
          android:layout_height = "wrap_content"
          android:textColor = "#000000"
          android:textSize = "22sp"
          android:text = " 登录" />
      
    </ LinearLayout >
   
    < LinearLayout
        android:layout_width = "fill_parent"
        android:layout_height = "wrap_content"
        android:paddingTop = "15dip"
        android:paddingBottom = "15dip"
        android:background = "#FFFFFF"
        android:layout_marginBottom = "1dip"
        android:gravity = "center"
        android:orientation = "vertical" >
      
       < EditText
          android:id = "@+id/et_paw"
          android:layout_width = "216dip"
          android:layout_height = "wrap_content"
          android:scrollHorizontally = "true"  
          android:hint = " 密码"
          android:inputType = "textPassword" />
      
    </ LinearLayout >
    < LinearLayout
        android:layout_width = "fill_parent"
        android:layout_height = "wrap_content"
        android:orientation = "horizontal" >
        < Button
            android:id = "@+id/btn_ok"
            android:layout_width = "match_parent"
            android:layout_height = "40dip"
            android:layout_weight = "1"
            android:layout_marginRight = "1dip"
            android:text = " 确定"
            android:background = "#FFFFFF" />
        < Button
            android:id = "@+id/btn_cancel"
            android:layout_width = "match_parent"
            android:layout_height = "40dip"
            android:layout_weight = "1"
            android:text = " 取消"
            android:background = "#FFFFFF" />
    </ LinearLayout >
</ LinearLayout >
  1. 代码
final Dialog loginDialog = new Dialog( context , R.style. HorizonDialog ) ;
loginDialog. setContentView ( R.layout. dialog_login );
final EditText et_paw = (EditText)loginDialog.findViewById(R.id. et_paw );
Button btn_ok = (Button)loginDialog.findViewById(R.id. btn_ok );
Button btn_cancel = (Button)loginDialog.findViewById(R.id. btn_cancel );
btn_ok.setOnClickListener( new OnClickListener() {
@Override
public void onClick(View v) {
    。。。。
}
});
btn_cancel.setOnClickListener( new OnClickListener() {
    @Override
    public void onClick(View v) {
      System. exit (0);
   }
});
loginDialog.show();

猜你喜欢

转载自blog.csdn.net/Mario_faker/article/details/79618903