# ffsky-app-dialog **Repository Path**: hljdrl/ffsky-app-dialog ## Basic Information - **Project Name**: ffsky-app-dialog - **Description**: android dialog组件 , 专注业务开发. - **Primary Language**: Android - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-12-30 - **Last Updated**: 2025-07-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ffsky-app-dialog #### 介绍 android dialog组件 基础Dialog封装,专注业务层View逻辑开发. #### 接口API类 接口层API EnvEvent.java | 类 | 备注 | |----------------------|------------------------| | UIDialog | Dialog弹框基础类 | | UISheetDialog | BottomSheetDialog弹框基础类 | | - | - | | ViewPartVisitor | 弹框View接口类 | | BasisViewPartVisitor | 基础Dialog方法接口 | | PromptVisitor | 确认提示框 | | PromptEditVisitor | EditText输入提示框 | | ProgressVisitor | 加载中提示框 | | DownloadVisitor | 下载文件展示进度提示框 | | SheetVisitor | 底部弹出选择提示框 | | - | - | #### 使用说明 1. 引入组件 新增UIPOPDialog,封装PopupWindow和ViewPartVisitor搭配使用. ```gradle api "com.gitee.hljdrl:dialog:1.0.3" ``` PromptEditVisitor增加设置布局和样式构造方法. attrs.xml maxUIHeight修改UIDialog命名下 ```gradle api "com.gitee.hljdrl:dialog:1.0.2" ``` 修复lib_dialog模板R文件复制未修改问题. ```gradle api "com.gitee.hljdrl:dialog:1.0.1" ``` ```gradle api "com.gitee.hljdrl:dialog:1.0.0" ``` 2. 代码范例-确认提示框 ```java PromptVisitor dialog = new PromptVisitor(activity); dialog. setTitle("提示"); dialog. setContentGravity(Gravity.LEFT); dialog. setContent("\u3000\u3000Android 16 开发者预览版 1 现已推出! Android 16 的首个开发者预览版现已发布,您可以在其中测试自己的应用。今后,我们会更频繁地发布 Android 版本,计划在 2025 年发布两个 SDK,这是我们为加快应用和设备创新步伐而采取的诸多措施之一。"); dialog. setLeftText("确定"); dialog. setOnEventListener(new OnEventListener() { @Override public void onItemClick ( boolean b, Dialog dialog){ dialog.dismiss(); } }); dialog. show(); ``` 3. 代码范例-确认提示框-长文本 ```java PromptVisitor dialog = new PromptVisitor(activity); dialog. setTitle("提示"); dialog. setContentGravity(Gravity.LEFT); dialog. setContent(activity.getString(R.string.max_text)); dialog. setLeftText("确定"); dialog. setRightText("取消"); dialog. setOnEventListener(new OnEventListener() { @Override public void onItemClick ( boolean b, Dialog dialog){ dialog.dismiss(); } }); dialog. show(); ``` 4. 代码范例-EditText输入提示框 ```java PromptEditVisitor dialog = new PromptEditVisitor(activity); dialog. setTitle("提示"); dialog. setGravity(Gravity.TOP); dialog. setContentGravity(Gravity.LEFT); dialog. setLeftText("确定"); dialog. setRightText("取消"); dialog. setOnEventListener(new OnEventListener() { @Override public void onItemClick ( boolean b, Dialog dialog){ dialog.dismiss(); } }); dialog. show(); ``` 5. 代码范例-加载中提示框 ```java ProgressVisitor progressVisitor = new ProgressVisitor(activity); progressVisitor. setTimeDismiss(3000); progressVisitor. show(); ``` 6. 代码范例-下载进度条提示框 ```java DownloadVisitor progressVisitor = new DownloadVisitor(activity); progressVisitor. setTitle("更新组件"); progressVisitor. setProgressText("下载模块1"); progressVisitor. setOnVisitedListener(new OnVisitedListener() { @Override public void onVisited (Dialog dialog, View view){ progressVisitor.setProgress(0); progressVisitor.setProgressMax(100); view.postDelayed(new Runnable() { int count = 0; @Override public void run() { count += 1; if (count < 100) { progressVisitor.setProgress(count); view.postDelayed(this::run, 100); } else { UIUtil.dismissDialog(dialog); } } }, 100); } }); progressVisitor. show(); ``` 7. 范例代码-选择提示框 ```java List sheetEntities = new ArrayList<>(); int size = FFKitUtil.getRandomInt(10, 100); for( int i = 0; i