国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > Android > 正文

Android自定義對(duì)話(huà)框Dialog

2019-10-23 18:32:19
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文簡(jiǎn)單介紹自定義對(duì)話(huà)框Dialog的使用,代碼和結(jié)構(gòu)都非常簡(jiǎn)單,目的是能夠快速使用自定義對(duì)話(huà)框,在本文中不具體講解對(duì)話(huà)框的高級(jí)使用。

實(shí)現(xiàn)步驟

首先需要自己在我們的.xml文件中自己構(gòu)建布局
布局文件做好之后,我們可以在style文件下自己定義布局的樣式
前兩步都做好之后,我開(kāi)始在寫(xiě)java文件

具體實(shí)現(xiàn)過(guò)程

1.   xml文件

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:layout_width="300dp"  android:layout_height="180dp"  android:gravity="center"  android:orientation="vertical">  <LinearLayout    android:layout_width="match_parent"    android:layout_height="40dp"    android:background="@android:color/holo_green_light">    <TextView      android:layout_width="match_parent"      android:layout_height="match_parent"      android:gravity="center_vertical"      android:text="IP設(shè)置"      android:textColor="#fff"      android:textSize="24sp" />  </LinearLayout>  <LinearLayout    android:layout_width="match_parent"    android:layout_height="0dp"    android:layout_weight="1"    android:background="#fff"    android:gravity="center"    android:orientation="horizontal"    android:padding="5dp">    <EditText      android:id="@+id/et_ip1"      style="@style/textview14sp"      android:layout_weight="1"      android:inputType="phone"      android:maxLength="3"      android:textColor="@color/colorPrimary" />    <EditText      android:id="@+id/et_ip2"      style="@style/textview14sp"      android:layout_weight="1"      android:inputType="phone"      android:maxLength="3"      android:textColor="@color/colorPrimary" />    <EditText      android:id="@+id/et_ip3"      style="@style/textview14sp"      android:layout_weight="1"      android:inputType="phone"      android:maxLength="3"      android:textColor="@color/colorPrimary" />    <EditText      android:id="@+id/et_ip4"      style="@style/textview14sp"      android:layout_weight="1"      android:inputType="phone"      android:maxLength="3"      android:textColor="@color/colorPrimary" />  </LinearLayout>  <LinearLayout    android:layout_width="match_parent"    android:layout_height="45dp"    android:orientation="horizontal">    <Button      android:id="@+id/btn_ipok"      android:layout_width="0dp"      android:layout_height="match_parent"      android:layout_weight="1"      android:background="@android:color/holo_green_light"      android:text="確認(rèn)"      android:textColor="#fff"      android:textSize="30sp" />    <View      android:layout_width="1dp"      android:layout_height="match_parent"      android:background="#fff" />    <Button      android:id="@+id/btn_ipcancle"      android:layout_width="0dp"      android:layout_height="match_parent"      android:layout_weight="1"      android:background="@android:color/holo_green_light"      android:text="取消"      android:textColor="#fff"      android:textSize="30sp" />  </LinearLayout></LinearLayout>

以上是我的xml代碼,里面用到了一些簡(jiǎn)單的組建,大家按自己的需求和風(fēng)格制作就行。部分組件中用到了style屬性,該屬性我們同樣是在res/value/style文件中構(gòu)建.
注意:所有組件的首字母都要大寫(xiě)。

2.  style

<!-- 自定義對(duì)話(huà)框樣式 -->  <style name="dialog_custom" parent="android:style/Theme.Dialog">    <item name="android:windowFrame">@null</item>    <item name="android:windowNoTitle">true</item>    <item name="android:background">#00000000</item>    <item name="android:windowBackground">@android:color/transparent</item>  </style>

3.  class文件

public class IP_dialog extends Dialog {  private Button btnOk, btnCancle;  private EditText ip1, ip2, ip3, ip4;  public static String ip = "";  public IP_dialog(Context context) {    super(context, R.style.dialog_custom);  }  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.dialog);    initView();    initEvet();  }  /*初始化組件*/  private void initView() {    btnOk = (Button) findViewById(R.id.btn_ipok);    btnCancle = (Button) findViewById(R.id.btn_ipcancle);    ip1 = (EditText) findViewById(R.id.et_ip1);    ip2 = (EditText) findViewById(R.id.et_ip2);    ip3 = (EditText) findViewById(R.id.et_ip3);    ip4 = (EditText) findViewById(R.id.et_ip4);  }  /*監(jiān)聽(tīng)事件*/  private void initEvet() {    btnOk.setOnClickListener(new View.OnClickListener() {      @Override      public void onClick(View view) {        ip = getIP();        Log.e("IP--->", ip);        dismiss();      }    });    btnCancle.setOnClickListener(new View.OnClickListener() {      @Override      public void onClick(View view) {        dismiss();      }    });  }  /*獲取輸入的IP值*/  private String getIP() {    String ip = ip1.getText().toString().trim() + "."        + ip2.getText().toString().trim() + "."        + ip3.getText().toString().trim() + "."        + ip4.getText().toString().trim();    return ip;  }}

該類(lèi)繼承Dialog,在該類(lèi)中我們需要有一個(gè)構(gòu)造方法在方法里面引用我們的style文件,接下來(lái)的就是我們一般套路啦。特別提示一下我在該類(lèi)中使用dismiss();來(lái)銷(xiāo)毀對(duì)話(huà)框。在MainActivity.java中,只需要把這個(gè)類(lèi)實(shí)例化一下,創(chuàng)建出對(duì)象,調(diào)用對(duì)象的show();方法就可以將對(duì)話(huà)框顯示出來(lái)。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到Android開(kāi)發(fā)頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 镇平县| 神农架林区| 驻马店市| 怀化市| 平果县| 华蓥市| 宁陕县| 汉中市| 南安市| 镇雄县| 扶余县| 汝南县| 衡南县| 蓝山县| 慈利县| 昌图县| 芮城县| 云霄县| 册亨县| 遂平县| 辽阳县| 澄迈县| 勐海县| 阿瓦提县| 金沙县| 烟台市| 龙岩市| 西平县| 姚安县| 隆安县| 黄平县| 公安县| 罗定市| 全南县| 沁阳市| 页游| 盱眙县| 湖北省| 建德市| 都匀市| 苍梧县|