欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

AndroidDialog對話框實例代碼講解

Dialog的基本方法

創(chuàng)新互聯公司-專業(yè)網站定制、快速模板網站建設、高性價比天柱網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式天柱網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋天柱地區(qū)。費用合理售后完善,十多年實體公司更值得信賴。

//創(chuàng)建Dialog
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
//設置標題圖標
builder.setIcon(R.drawable.ic_launcher);
//設置標題
builder.setTitle("這是一個對話框");
//設置信息
builder.setMessage("是否要跳轉?");
//確定按鈕
setPositiveButton(CharSequence text, DialogInterface.OnClickListener listener)
//取消按鈕
setNegativeButton (CharSequence text, DialogInterface.OnClickListener listener)
//忽略
setNeutralButton (CharSequence text, DialogInterface.OnClickListener listener)
//顯示對話框
show();

系統(tǒng)樣式

1.下拉列表

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
     builder.setIcon(R.drawable.ic_launcher);
     builder.setTitle("選擇一個城市");
     //下拉列表的數據源
     final String[] cities = {"北京", "上海", "廣州", "深圳", "杭州"};
     builder.setItems(cities, new DialogInterface.OnClickListener(){
       @Override
       public void onClick(DialogInterface dialog, int which){
         Toast.makeText(MainActivity.this, "你選擇的城市為:" + cities[which], Toast.LENGTH_SHORT).show();
       }
 });
 builder.show();

2.單選框列表

AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
    builder.setIcon(R.drawable.ic_launcher);
    builder.setTitle("請選擇性別");
    final String[] sex = {"男", "女"};
    //第二個參數指定默認哪個單選框被勾中
    builder.setSingleChoiceItems(sex, 1, new DialogInterface.OnClickListener(){
      @Override
      public void onClick(DialogInterface dialog, int which){
          Toast.makeText(MainActivity.this, "性別為:" + sex[which], Toast.LENGTH_SHORT).show();
      }
    });
    builder.setPositiveButton("確定", new DialogInterface.OnClickListener(){
      @Override
      public void onClick(DialogInterface dialog, int which){
            
      }
    });
    builder.setNegativeButton("取消", new DialogInterface.OnClickListener(){
      @Override
      public void onClick(DialogInterface dialog, int which){
            
      }
    });
builder.show();

3.多選框列表

String str;
AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("選擇你想看的電視劇");
final String[] hobbies = {"廷禧攻略", "扶搖", "香蜜沉沉燼如霜", "如懿傳"};
//第二個參數代表哪幾個選項被選擇,需要傳遞一個boolean[]數組進去,其長度要和第一個參數的長度相同,如果null表示都不選
builder.setMultiChoiceItems(hobbies, null, new DialogInterface.OnMultiChoiceClickListener(){
  @Override
  public void onClick(DialogInterface dialog, int which, boolean isChecked){
    if(isChecked){
      str.append(hobbies[which] + ", ");
    }
    Toast.makeText(MainActivity.this, "選擇的是:" + str.toString(), Toast.LENGTH_SHORT).show();
  }
 });
builder.setPositiveButton("確定", new DialogInterface.OnClickListener(){
  @Override
  public void onClick(DialogInterface dialog, int which){

  }
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener(){
  @Override
  public void onClick(DialogInterface dialog, int which){

  }
});
builder.show();

 4.等待對話框

ProgressDialog waitingDialog= new ProgressDialog(MainActivity.this);
waitingDialog.setTitle("等待加載中,請稍后...");
waitingDialog.setMessage("等待中...");
waitingDialog.setIndeterminate(true);//采用不確定式的進度條
waitingDialog.setCancelable(false);//點擊外部不取消對話框
waitingDialog.show();

5.進度條對話框

int MAXPD = 100;
ProgressDialog progressDialog = new ProgressDialog(MainActivity.this);
progressDialog.setProgress(0);//設置默認值
progressDialog.setTitle("正在下載");
progressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//進度條樣式
progressDialog.setMax(MAXPD);//設置最大值
progressDialog.show();

自定義Dialog

1.繼承Dialog

public class CustomDialog extends Dialog {
//標題
protected TextView hintTv;
//左邊按鈕
protected Button doubleLeftBtn;
//右邊按鈕
protected Button doubleRightBtn;
//輸入框
public EditText editText;
public CustomDialog(Context context) {
  super(context, R.style.CustomDialogStyle);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  this.setCancelable(false); // 是否可以撤銷
  setContentView(R.layout.dialog_custom);
  hintTv = findViewById(R.id.tv_common_dialog_hint);
  doubleLeftBtn = findViewById(R.id.btn_common_dialog_double_left);
  doubleRightBtn = findViewById(R.id.btn_common_dialog_double_right);
  editText = findViewById(R.id.et_common_dialog);
}
//置右鍵文字和點擊事件
public void setRightButton(String rightStr, View.OnClickListener clickListener) {
  doubleRightBtn.setOnClickListener(clickListener);
  doubleRightBtn.setText(rightStr);
}
//設置左鍵文字和點擊事件
public void setLeftButton(String leftStr, View.OnClickListener clickListener) {
  doubleLeftBtn.setOnClickListener(clickListener);
  doubleLeftBtn.setText(leftStr);
}
//設置提示內容
public void setHintText(String str) {
  hintTv.setText(str);
  hintTv.setVisibility(View.VISIBLE);
}
//給兩個按鈕 設置文字
public void setBtnText(String leftStr, String rightStr) {
  doubleLeftBtn.setText(leftStr);
  doubleRightBtn.setText(rightStr);
}
}

2.自定義Style

<style name="CustomDialogStyle" parent="@android:style/Theme.Dialog">
    <!-- 邊框 -->
    <item name="android:windowFrame">@null</item>
    <!-- 背景透明 -->
    <item name="android:windowBackground">@color/transparent</item>
    <!-- 無標題 -->
    <item name="android:windowNoTitle">true</item>
    <!-- 是否浮現在activity之上 -->
    <item name="android:windowIsFloating">true</item>
    <!-- 半透明 -->
    <item name="android:windowIsTranslucent">false</item>
    <!-- 背景模糊 -->
    <item name="android:windowContentOverlay">@null</item>
    <!-- 允許對話框的背景變暗 -->
    <item name="android:backgroundDimEnabled">true</item>
    <!-- 字體顏色 -->
    <item name="android:textColor">@color/white</item>
    <item name="android:editTextColor">@color/white</item>
 </style>

3.自定義布局

<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  xmlns:tools="http://schemas.android.com/tools"
  android:id="@+id/ll_common_dialog_layout"
  android:layout_width="500dp"
  android:layout_height="250dp"
  android:layout_margin="5dp"
  android:background="@drawable/background_info"
  android:orientation="vertical"
  android:gravity="center">

  <!--提示信息-->
  <TextView
    android:id="@+id/tv_common_dialog_hint"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:textColor="@color/white"
    android:textSize="27sp"/>
  <EditText
    android:id="@+id/et_common_dialog"
    android:layout_width="300dp"
    android:layout_height="wrap_content"
    android:textColor="@color/back"
    android:inputType="text|textNoSuggestions"
    tools:ignore="LabelFor"
    android:hint="請輸入密碼"/>
  
  <!--底部按鈕-->
  <LinearLayout
    android:id="@+id/ll_common_dialog_double"
    android:layout_width="360dp"
    android:layout_height="60dp"
    android:layout_margin="20dp"
    android:orientation="horizontal">

    <Button
      android:id="@+id/btn_common_dialog_double_left"
      android:layout_width="0dp"
      android:layout_height="match_parent"
      android:layout_weight="1"
      android:background="@drawable/btnselector"
      android:gravity="center"
      android:textColor="@color/white"
      android:textSize="27dp"/>

    <Button
      android:id="@+id/btn_common_dialog_double_right"
      android:layout_width="0dp"
      android:layout_height="match_parent"
      android:layout_weight="1"
      android:background="@drawable/btnselector"
      android:gravity="center"
      android:textColor="@color/white"
      android:textSize="27dp"/>
  </LinearLayout>
</LinearLayout>

4.ipad隱藏底部虛擬按鍵

//彈出dialog時隱藏底部虛擬按鍵
dialog.getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
dialog.getWindow().getDecorView().setOnSystemUiVisibilityChangeListener(new View.OnSystemUiVisibilityChangeListener() {
  @Override
  public void onSystemUiVisibilityChange(int visibility) {
    int uiOptions =View.SYSTEM_UI_FLAG_HIDE_NAVIGATION;
    if (Build.VERSION.SDK_INT >= 19) {
      uiOptions |= 0x00001000;
    } else {
      uiOptions |= View.SYSTEM_UI_FLAG_LOW_PROFILE;
    }
    dialog.getWindow().getDecorView().setSystemUiVisibility(uiOptions);
  }
});

5.使用自定義Dialog

CustomDialog dialog = new CustomDialog(this);
dialog.setHintText("請輸入密碼");
dialog.setLeftButton("取消", new View.OnClickListener() {
    @Override
    public void onClick(View v) {
      dialog.dismiss();
    }
});
dialog.setRightButton("確定", new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        
    }
});
dialog.show();

總結

以上所述是小編給大家介紹的Android Dialog對話框實例代碼講解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對創(chuàng)新互聯網站的支持!

文章標題:AndroidDialog對話框實例代碼講解
文章轉載:http://www.aaarwkj.com/article8/igship.html

成都網站建設公司_創(chuàng)新互聯,為您提供網頁設計公司、網站營銷企業(yè)建站、小程序開發(fā)、網站內鏈、電子商務

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯

成都網頁設計公司
av中文字幕国产精品| 色噜噜狠狠狠久久综合一区| 国产高清不卡午夜福利| 91久久精品凹凸一区二区| 欧美日韩伦理片在线观看| 亚洲欧美日韩成人在线观看| 日本经典三级在线视频| 日本国产一区二区三区在线| 成人性生交免大片免费| 亚洲人午夜射精精品日韩| 97精品在线视频免费| 国产午夜在线影院一区二区| 国产一区av麻豆免费观看| 少妇高潮一区二区三区99| 国产精品一区二区麻豆本子 | 一区二区日韩视频九一蜜桃| 可以免费看的日韩黄色| 情侣自拍偷拍亚洲天堂区| va精品人妻一区二区三区| 亚洲1区2区中文字幕| 97久久精品国产成人影院| 俩小伙探花专约老熟女| 国产极白丝白浆日本国产| 持续侵犯人妻中文字幕| 偷窥偷拍原味一区二区三区| 成人欧美一区二区三区av| 亚洲国产区男人的天堂| 午夜在线免费观看小视频| 蜜桃国产精品视频网站| 成人黄色片久久久大全| 亚洲91精品一区二区三区| 亚洲一区二区三区熟妇| 亚洲美女插入av网络导航| 天堂av一区二区在线播放| 国产精品_国产精品_k频道 | 亚洲av偷拍一区二区三区不卡| 日本岛国一区二区在线| 亚洲欧美日韩精品麻豆| 精品成人18亚洲av播放| 激情内射日本一区二区三区| 美女张开腿让男人插进去 |