Android开发中,关于对话框中的圆形进度条和Layout的问题
发布时间:2025-05-13 07:53:32 发布人:远客网络
一、Android开发中,关于对话框中的圆形进度条和Layout的问题
你肯定使用了系统的 oncreateDialog和 showdialog方法了,所以这个就会显示一次第二次不显示了,你应该调用 dialog方法里面的 show()方法来显示,这样每次显示那个progressbar都会在转圈
你说下面设置了一个白色背景,但是下面还是有个框,不过我有个疑问,如果你设置为白色背景,那么你的转条默认是白色的不就看不见了吗?好了这个问题不纠结了!那个黑色的是边框导致的,去掉边框就行了
一般我们采用的是自定义dialog,也就是写一个类来继承dialog,这个时候的构造函数是这个:
public MyDialog(Context context, int theme){
这个theme是什么东西呢?就是一个style样式如下:
<resources> <style name="dialog" parent="@android:style/Theme.Dialog"> <item name="android:windowFrame">@null</item><!--边框-- <item name="android:windowIsFloating">true</item><!--是否浮现在activity之上--
<item name="android:windowIsTranslucent">false</item><!--半透明-- <item name="android:windowNoTitle">true</item><!--无标题-- <item name="android:windowBackground">@color/transparent</item><!--背景透明-- <item name="android:backgroundDimEnabled">false</item><!--模糊-- </style></resources>
public boolean onKeyDown(int keyCode, KeyEvent event){
Dialog dialog= new MyDialog(this, R.style.MyDialog);
android.view.WindowManager.LayoutParams pa3= new android.view.WindowManager.LayoutParams();
pa3.height= android.view.WindowManager.LayoutParams.WRAP_CONTENT;
pa3.width= android.view.WindowManager.LayoutParams.WRAP_CONTENT;
Window window= dialog.getWindow();
return super.onKeyDown(keyCode, event);
之所以android.view.WindowManager.LayoutParams我要这么写,因为LayoutParams太多了,我害怕你找半天,兄弟对你够好了吧!
要是选为精彩回答那就谢谢你了!
二、Android 怎么实现圆形水纹状进度
1、CircleProgress是一个圆形进度条组件,它可以模仿 QQ健康计步器的效果,非常适合用来展示用户的健康数据。这个组件支持自定义背景色、进度条的宽度以及起始角度,用户可以根据自己的需求进行调整。开发者可以轻松地设置这些参数来创建一个符合自己应用风格的进度条。
2、除了 CircleProgress,还有一种叫做 DialProgress的圆形进度条。它与 CircleProgress类似,但 DialProgress支持添加刻度。这种特性可以使得用户更加直观地了解当前的进度。对于需要显示具体数值的场景,DialProgress是一个不错的选择。
3、WaveProgress是另一种特别的圆形进度条,它实现了水波纹效果,非常适合用来展示加载进度或者某种动态效果。不过,WaveProgress不支持渐变效果和起始角度的配置。如果开发者需要这些功能,可以参考 CircleProgress,自己实现具有渐变和起始角度配置的水波纹效果。
4、为了更好地展示这些圆形进度条的效果,这里提供了一些效果图。通过这些图片,大家可以更直观地了解这些组件的实际展示效果。不论是哪种类型的圆形进度条,它们都可以为应用界面增添一抹独特的风格,提高用户体验。
5、不论是 CircleProgress、DialProgress还是 WaveProgress,它们都为开发者提供了丰富的自定义选项。开发者可以根据自己的需求选择合适的组件,并通过调整参数来实现所需的效果。这些组件不仅功能强大,而且使用起来也非常方便,适合各种应用场景。
6、这些圆形进度条组件不仅能够满足基本的进度展示需求,还能通过自定义配置来满足更多复杂的设计需求。无论是简单的进度条,还是具有特殊效果的水波纹进度条,开发者都能找到适合自己的解决方案。使用这些组件,可以使应用界面更加丰富和吸引人。
三、Android/OPhone开发完全讲义的图书目录
1.2.1开发Android程序需要些什么 4
1.3 Android SDK中的常用命令行工具 7
1.3.1启动和关闭ADB服务(adb start-server和adb kill-server) 7
1.3.2查询当前模拟器/设备的实例(adb devices) 7
1.3.3安装、卸载和运行程序(adb install、adb uninstall和am) 7
1.3.4 PC与模拟器或真机交换文件(adb pull和adb push) 8
1.3.6创建、删除和浏览AVD设备(android) 9
2.1编写用于显示当前日期和时间的程序 13
2.3.1使用命令行方式进行签名 18
2.3.2使用ADT插件方式进行签名 18
3.1 Android应用程序中的资源 21
3.2.3广播接收者(Broadcast receivers)组件 24
3.2.4内容提供者(Content providers)组件 24
3.3 AndroidManifest.xml文件的结构 24
4.1建立、配置和使用Activity 26
实例1:演示Activity的生命周期 29
4.2.2使用XML布局文件控制视图 32
实例2:混合使用XML布局文件和代码来控制视图 35
4.2.4定制组件(Widget)的三种方式 37
实例3:定制组件——带图像的TextView 37
实例4:定制组件——带文本标签的EditText 40
实例5:定制组件——可更换表盘的指针时钟 42
4.3使用AlertDialog类创建对话框 47
实例7:创建【覆盖/忽略/取消】对话框 49
实例8:创建3种选择省份的列表对话框 52
4.3.7水平进度对话框和圆形进度对话框 56
实例9:水平进度对话框和圆形进度对话框演示 56
实例11:使用Activity托管对话框 61
实例12:创建悬浮对话框和触摸任何位置都可以关闭的对话框 62
4.4.2 Notification与状态栏信息 66
4.5.2设置与菜单项关联的图像和Activity 69
4.5.3响应选项菜单项单击事件的3种方式 69
4.5.4动态添加、修改和删除选项菜单 70
4.5.5创建带复选框和选项按钮的子菜单 71
实例13:Activity菜单、子菜单、上下
4.6.1框架布局(FrameLayout) 74
实例14:霓虹灯效果的TextView 75
4.6.2线性布局(LinearLayout) 76
实例15:利用LinearLayout将按钮放在屏幕的四角和中心位置 78
4.6.3相对布局(RelativeLayout) 79
实例16:利用RelativeLayout实现梅花效果的布局 79
4.6.4表格布局(TableLayout) 80
4.6.5绝对布局(AbsoluteLayout) 81
5.1.1显示文本的组件:TextView 83
实例18:在TextView中显示URL及不同字体大小、不同颜色的文本 84
5.1.2输入文本的组件:EditText 87
实例20:在EditText中输入特定的字符 88
实例21:按回车键显示EditText 89
5.1.3自动完成输入内容的组件:AutoCompleteTextView 90
实例22:异形(圆形、五角星、螺旋形和箭头)按钮 92
5.2.2图像按钮组件:ImageButton 93
实例23:同时显示图像和文字的按钮 94
5.2.3选项按钮组件:RadioButton 94
5.2.4开关状态按钮组件:ToggleButton 95
实例24:利用XML布局文件动态创建CheckBox 96
5.3.1输入日期的组件:DatePicker 98
5.3.2输入时间的组件:TimePicker 98
实例25:DatePicker、TimePicker与TextView
5.3.3显示时钟的组件:AnalogClock和DigitalClock 99
5.4.1进度条组件:ProgressBar 100
实例26:改变ProgressBar和SeekBar
5.5.1显示图像的组件:ImageView 104
实例27:可显示图像指定区域的ImageView组件 105
实例28:动态缩放和旋转图像 106
实例29:可以单选和多选的ListView 109
实例30:动态添加、删除ListView
实例31:改变ListView列表项选中状态的背景颜色 113
5.5.3封装ListView的Activity:ListActivity 114
实例32:使用SimpleAdapter建立复杂的列表项 114
5.5.4可展开的列表组件:ExpandableListView 118
5.5.5下拉列表组件:Spinner 119
5.5.6垂直滚动视图组件:ScrollView 121
5.5.7水平滚动视图组件:Horizontal-ScrollView 121
实例34:可垂直和水平滚动的视图 122
5.5.8网格视图组件:GridView 122
5.5.9可循环显示和切换图像的组件:Gallery和ImageSwitcher 123
6.1最简单的数据存储方式:SharedPreferences 127
6.1.1使用SharedPreferences存取数据 127
实例35:存取复杂类型的数据 129
6.1.3设置数据文件的访问权限 131
6.1.4可以保存设置的Activity——PreferenceActivity 132
6.2.1 openFileOutput和openFileInput方法 135
6.2.2 SAX引擎读取XML文件的原理 141
实例38:将XML数据转换成Java对象 142
6.4.1 SQLite数据库管理工具 145
6.5在Android中使用SQLite数据库 147
6.5.1 SQLiteOpenHelper类与自动升级数据库 148
6.5.2 SimpleCursorAdapter类与数据绑定 148
实例39:带照片的联系人管理系统 151
6.5.3将数据库与应用程序一起发布 154
6.6抽象的标准——内容提供者(ContentProvider) 157
实例41:将联系人管理和英文字典集成到自己的应用中 158
7.1.1用Intent启动Activity,并在Activity
7.1.2调用其他应用程序中的Activity(拨打电话、浏览网页、发Email等) 167
7.1.3定制自己的Activity Action 170
实例42:将电子词典的查询功能共享成一个Activity Action 172
实例43:开机可自动运行的程序 174
实例44:收到短信了,该做点什么 174
实例45:显示手机电池的当前电量 176
7.2.2在自己的应用程序中发送广播 177
实例46:接收联系人系统中发送的添加联系人广播 178
8.1.2绑定Activity和Service 183
8.1.3在BroadcastReceiver中启动Service 185
8.2.2在模拟器上模拟重力感应 189
8.3.5全局定时器AlarmManager 198
实例53:传递复杂数据的AIDL服务 207
实例54:将网络图像装载到ListView组件中 213
实例55:Google图像画廊(Gallery) 215
9.2.1用WebView组件浏览网页 219
9.2.2用WebView组件装载HTML代码 220
实例57:将英文词典整合到Web页中(JavaScript调用Java方法) 222
实例60:通过WebService查询产品信息 231
实例61:绘制基本的图形和文本 237
实例62:用两种方式绘制位图 241
实例63:可任意改变透明度的位图 243
实例65:按圆形轨迹扭曲图像 246
实例68:可在图像上绘制图形的画板 256
10.2.1使用MediaPlayer播放MP3文件 260
10.2.2使用MediaRecorder录音 261
10.2.3使用VideoView播放视频 262
10.2.4使用SurfaceView播放视频 262
实例69:通过帧动画方式播放Gif动画 266
实例71:循环向右移动的EditText与上下弹跳的球 272
11.2.6自定义动画渲染器(Interceptor) 281
11.2.7以动画方式切换View的组件ViewFlipper 282
12.2构建OpenGL ES的基本开发框架 286
13.1.1 Android怎么存储资源 297
13.2.2字符串(String)资源 299
13.2.5尺寸(Dimension)资源 303
13.2.8绘画(Drawable)资源 306
13.2.9动画(Animation)资源 307
13.2.12属性(Attribute)资源 310
实例75:改进可显示图标的IconTextView组件 312
14.3控制手机摄像头(拍照) 323
14.3.2实现自己的拍照Activity 325
15.1窗口小部件(App Widget) 340
15.1.1在Android桌面上添加App Widget 340
15.1.2开发App Widget的步骤 341
15.1.3 AppWidgetProvider类 345
15.1.4向App Widget添加配置Activity 346
实例79:可以选择风格的数字时钟 346
15.2.1向快捷方式列表中添加快捷方式 350
15.2.2直接将快捷方式放到桌面上 351
15.3实时文件夹(LiveFolder) 351
16.2安装、配置和测试NDK开发环境 355
16.2.2下载和安装Android NDK 355
16.2.4配置Android NDK的开发环境 358
16.2.5编译和运行NDK自带的例子 359
16.3.2编写Android NDK程序的步骤 362
实例80:将文件中的小写字母转换成大写字母(NDK版本) 362
16.3.4 Android NDK定义的变量 365
16.3.5 Android NDK定义的函数 366
16.3.7配置Application mk文件 367
第18章 Android平台的新特性展示
18.1.1 Android 1.6的新特性 374
18.1.2 Android 2.0的新特性 376
18.2 Android Framework API演变 376
18.2.1 Android 1.6 Framework API的变化 376
18.2.2 Android 2.x Framework API的变化 377
18.3实时壁纸(Live Wallpapers,Android 2.1) 377
18.4补间动画渲染器(Android 1.6) 384
18.4.3 Anticipate/Overshoot渲染器 385
第19章另类的输入输出(Android 1.6)
19.1.4编写自己的手势创建器 391
21.1.2 JIL Widget的运行环境 402
21.2.2测试一下ODT是否安装成功 403
21.2.3测试一下WDT是否安装成功 403
实例81:可拨打视频电话的程序 406
23.1编写第一个JIL Widget程序 409
23.3.1获得与文件相关的信息 413
24.1.1万年历的核心类:Calendar 422
24.1.2日历内容元素的基类:CalendarParent 424
24.1.3绘制万年历边框:Border类 424
24.2.5绘制日期和网格:Grid类 426
24.2.6日历视图:CalendarView类 433
24.3可以写日记和提醒的万年历 437
24.3.1显示所有的记录信息:AllRecord类 437
24.3.2添加和修改记录:Record类 439
24.3.5在广播接收器中显示提醒界面 442
24.3.6访问数据库:DBService 443
第25章知道当前位置的Google GTalk机器人
25.1 GTalk的通讯协议和技术 448
25.1.2 XMPP客户端库:Smack和Asmack 449
25.4.3自动回复当前的位置(GPS定位) 458