Android自定Dialog
先上效果图:
1.先在drawable下新建一个drawble resource file,这个文件用于dialog的圆角背景
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
<?xml version= "1.0" encoding= "utf-8" ?> 2 .在layout下新建一个xml文件,这个布局的背景使用刚刚定义的drawable文件,android:background= "@drawable/建的drawable文件" <?xml version= "1.0" encoding= "utf-8" ?> <TextView android:layout_width= "match_parent" android:layout_height= "wrap_content" android:text= "操作遥控器" android:textColor= "#585858" android:textSize= "25dp" android:gravity= "center" /> <TextView android:layout_width= "match_parent" android:layout_height= "wrap_content" android:layout_margin= "5dp" android:textColor= "#585858" android:text= "按开关/模式/温度加减任意一键学习" android:textSize= "20dp" android:gravity= "center" /> <LinearLayout android:layout_width= "match_parent" android:layout_height= "140dp" android:orientation= "horizontal" android:padding= "10dp" > <Button android:layout_width= "100dp" android:layout_height= "wrap_content" android:background= "@mipmap/yaokong" android:layout_marginLeft= "35dp" /> <!--<ImageView--> <!--android:layout_width= "100dp" --> <!--android:layout_height= "wrap_content" --> <!--android:src= "@mipmap/yaokong" --> <!--android:layout_marginLeft= "35dp" --> <!--/>--> <LinearLayout android:layout_width= "150dp" android:layout_height= "wrap_content" android:orientation= "vertical" android:layout_marginLeft= "15dp" android:layout_marginBottom= "5dp" > <ImageView android:layout_width= "wrap_content" android:layout_height= "90dp" android:src= "@mipmap/xuanhuang" /> <TextView android:layout_width= "wrap_content" android:layout_height= "wrap_content" android:layout_gravity= "center" android:text= "等待学习按键..." android:textColor= "#585858" android:textSize= "20dp" /> </LinearLayout> </LinearLayout> <LinearLayout android:id= "@+id/yaokongCancel" android:layout_width= "match_parent" android:layout_height= "match_parent" android:orientation= "vertical" > <View android:layout_width= "match_parent" android:layout_height= "1px" android:layout_marginTop= "1dp" android:background= "#8d8d8f" /> <TextView android:layout_width= "match_parent" android:layout_height= "wrap_content" android:gravity= "center" android:layout_marginTop= "8dp" android:textColor= "#1196db" android:textSize= "25dp" android:text= "取消" /> </LinearLayout> |
3.在values的styles设置dialog样式
4.之后去显示
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
package com.example.atry.test; import android.app.Dialog; import android.content.Context; import android.os.Bundle; import android.support.v7.app.ActionBar; import android.support.v7.app.AppCompatActivity; import android.view.LayoutInflater; import android.view.View; import android.widget.LinearLayout; public class tianjiayaokong extends AppCompatActivity { // 这个为点击显示dialog的布局 private LinearLayout kongtiaol; // dialog中的取消 private LinearLayout yaokongCancel; @Override protected void onCreate(Bundle savedInstanceState) { super .onCreate(savedInstanceState); setContentView(R.layout.activity_tianjiayaokong); ActionBar actionBar = getSupportActionBar(); if (actionBar != null ) { actionBar.hide(); } kongtiaol = findViewById(R.id.kongtiaol); kongtiaol.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { showDialog(); } }); } /** * 显示dialog */ private void showDialog() { LayoutInflater inflater = getLayoutInflater(); //通过inflate加载出自定义布局 View view = inflater.inflate(R.layout.activity_dialog_componet, null ); final Dialog dialog = new Dialog( this ,R.style.custom_dialog); dialog.setContentView(view); yaokongCancel = view.findViewById(R.id.yaokongCancel); yaokongCancel.setOnClickListener( new View.OnClickListener() { @Override public void onClick(View view) { dialog.dismiss(); } }); dialog.show(); } } |
总结
以上所述是小编给大家介绍的Android实现自定义dialog的代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
原文链接:https://blog.csdn.net/weixin_42006094/article/details/83957868