Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
HBHAndroid
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
杨秀秀
HBHAndroid
Commits
e6d0a96e
Commit
e6d0a96e
authored
Apr 24, 2025
by
小费同学阿
💬
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
基础搭建
功能开发 1:我的停车
parent
5a8c8cd3
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
243 additions
and
11 deletions
+243
-11
CustomDialog.kt
...r/src/main/java/com/xx/hbhconsumer/dialog/CustomDialog.kt
+60
-0
MyParkDialog.kt
...r/src/main/java/com/xx/hbhconsumer/dialog/MyParkDialog.kt
+11
-3
MyParkActivity.java
.../main/java/com/xx/hbhconsumer/ui/park/MyParkActivity.java
+28
-8
custom_dialog_layout.xml
consumer/src/main/res/layout/custom_dialog_layout.xml
+68
-0
dialog_custom_text.xml
consumer/src/main/res/layout/dialog_custom_text.xml
+76
-0
No files found.
consumer/src/main/java/com/xx/hbhconsumer/dialog/CustomDialog.kt
0 → 100644
View file @
e6d0a96e
package
com.xx.hbhconsumer.dialog
import
android.content.Context
import
android.view.Gravity
import
android.view.View
import
android.view.WindowManager
import
com.xx.hbhconsumer.R
import
com.xx.hbhconsumer.databinding.DialogCustomTextBinding
import
com.xx.xxviewlibrary.base.xxBaseDialog
import
com.xx.xxviewlibrary.comm.RefuseDialogBean
import
me.jessyan.autosize.utils.AutoSizeUtils
class
CustomDialog
(
context
:
Context
,
var
bean
:
RefuseDialogBean
,
var
callback
:
onAcceptCallBack
)
:
xxBaseDialog
<
DialogCustomTextBinding
>(
context
)
{
var
dismissBack
:
Boolean
=
true
;
override
fun
InitView
():
DialogSet
{
return
DialogSet
(
R
.
layout
.
dialog_custom_text
,
false
,
Gravity
.
CENTER_HORIZONTAL
or
Gravity
.
CENTER_VERTICAL
,
true
,
AutoSizeUtils
.
dp2px
(
context
,
320.0F
),
WindowManager
.
LayoutParams
.
WRAP_CONTENT
)
}
override
fun
InitData
()
{
binding
.
model
=
bean
binding
.
dialog
=
this
;
/*关闭弹窗监听事件,使其手机返回上一级功能和取消功能一致*/
setOnDismissListener
{
if
(
dismissBack
)
{
/*调用取消功能*/
callback
.
refuseBack
()
}
}
/* if (TextUtils.isEmpty(bean.refuseTxt))
{
binding.btnRefuse.visibility=View.GONE
}*/
}
fun
refuseClick
(
view
:
View
)
{
callback
.
refuseBack
()
dismissBack
=
false
dismiss
()
}
fun
acceptClick
(
view
:
View
)
{
callback
.
acceptBack
()
dismissBack
=
false
dismiss
()
}
interface
onAcceptCallBack
{
fun
acceptBack
()
fun
refuseBack
()
}
}
consumer/src/main/java/com/xx/hbhconsumer/dialog/MyParkDialog.kt
View file @
e6d0a96e
...
...
@@ -4,6 +4,7 @@ import android.content.Context
import
android.view.Gravity
import
android.view.View
import
android.view.WindowManager
import
android.widget.Toast
import
com.xx.hbhconsumer.R
import
com.xx.hbhconsumer.databinding.DialogMyParkNumberListBinding
import
com.xx.hbhconsumer.dialog.adapter.MyParkListAdapter
...
...
@@ -29,10 +30,17 @@ class MyParkDialog(context:Context, val list:List<TextListProvider>): xxBaseDial
fun
typeClickDialog
(
view
:
View
)
{
if
(
DialogClickListener
!=
null
)
{
DialogClickListener
.
dialogClickBack
(
view
.
id
,
adpter
.
getBuuthBusinessId
())
val
selectedPosition
=
adpter
.
getBuuthBusinessId
()
if
(
selectedPosition
!=
null
)
{
// 已经选中了某一项,执行相应的操作
if
(
DialogClickListener
!=
null
)
{
DialogClickListener
.
dialogClickBack
(
view
.
id
,
adpter
.
getBuuthBusinessId
())
}
dismiss
()
}
else
{
// 没有选中任何项,提示用户
Toast
.
makeText
(
context
,
"请选择一项"
,
Toast
.
LENGTH_SHORT
).
show
()
}
dismiss
()
}
...
...
consumer/src/main/java/com/xx/hbhconsumer/ui/park/MyParkActivity.java
View file @
e6d0a96e
package
com
.
xx
.
hbhconsumer
.
ui
.
park
;
import
android.content.Context
;
import
android.content.SharedPreferences
;
import
android.os.Bundle
;
import
android.util.Log
;
import
android.view.View
;
...
...
@@ -18,9 +16,8 @@ import com.xx.hbhconsumer.R;
import
com.xx.hbhconsumer.data.http.requst.ParkRequest
;
import
com.xx.hbhconsumer.data.http.respons.ParkBean
;
import
com.xx.hbhconsumer.databinding.ActivityMessageCenterBinding
;
import
com.xx.hbhconsumer.dialog.CustomDialog
;
import
com.xx.hbhconsumer.dialog.adapter.ParkAdapter
;
import
com.xx.hbhconsumer.ui.login.LoginActivity
;
import
com.xx.xxviewlibrary.comm.CommTextDialog
;
import
com.xx.xxviewlibrary.comm.RefuseDialogBean
;
import
java.util.List
;
...
...
@@ -73,6 +70,7 @@ public class MyParkActivity extends BaseActivity<ActivityMessageCenterBinding, M
zanwu_icon
.
setVisibility
(
View
.
GONE
);
zanwu_zi
.
setVisibility
(
View
.
GONE
);
}
else
{
deFlag
=
"1"
;
zanwu_icon
.
setVisibility
(
View
.
VISIBLE
);
zanwu_zi
.
setVisibility
(
View
.
VISIBLE
);
...
...
@@ -84,15 +82,15 @@ public class MyParkActivity extends BaseActivity<ActivityMessageCenterBinding, M
@Override
public
void
onItemLongClick
(
View
view
,
int
position
,
ParkBean
parkBean
)
{
// 去调删除接口
showC
ommTextDialog
(
new
RefuseDialogBean
(
"是否删除"
+
parkBean
.
getPlateNumber
()+
"该车牌号?"
,
"确定"
,
"取消"
),
new
CommText
Dialog
.
onAcceptCallBack
()
{
showC
ustomDialog
(
new
RefuseDialogBean
(
"是否删除"
+
parkBean
.
getPlateNumber
()
+
"该车牌号?"
,
"确定"
,
"取消"
),
new
Custom
Dialog
.
onAcceptCallBack
()
{
@Override
public
void
acceptBack
()
{
v
iewModel
.
deletePark
(
parkBean
.
getBusinessId
());
myParkV
iewModel
.
deletePark
(
parkBean
.
getBusinessId
());
}
@Override
public
void
refuseBack
()
{
// 取消操作不做任何处理
}
});
...
...
@@ -100,7 +98,29 @@ public class MyParkActivity extends BaseActivity<ActivityMessageCenterBinding, M
});
}
// 新增方法:用于显示 CustomDialog
private
void
showCustomDialog
(
RefuseDialogBean
bean
,
CustomDialog
.
onAcceptCallBack
callback
)
{
CustomDialog
customDialog
=
new
CustomDialog
(
this
,
bean
,
callback
);
customDialog
.
show
();
// 获取弹窗的 Window 对象
android
.
app
.
Dialog
dialog
=
customDialog
;
if
(
dialog
!=
null
)
{
android
.
view
.
Window
window
=
dialog
.
getWindow
();
if
(
window
!=
null
)
{
// 设置弹窗的 Gravity,例如居中
window
.
setGravity
(
android
.
view
.
Gravity
.
CENTER
);
// 获取当前的 Window 参数
android
.
view
.
WindowManager
.
LayoutParams
layoutParams
=
window
.
getAttributes
();
// 调整弹窗的 Y 偏移量(向上抬)
layoutParams
.
y
=
-
85
;
// 这里的值可以根据需要调整,负值表示向上移动
// 应用新的布局参数
window
.
setAttributes
(
layoutParams
);
}
}
}
@Override
public
int
initVariableId
()
{
return
BR
.
myParkViewModel
;
...
...
consumer/src/main/res/layout/custom_dialog_layout.xml
0 → 100644
View file @
e6d0a96e
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:binding=
"http://schemas.android.com/apk/res-auto"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"30dp"
android:layout_marginRight=
"30dp"
android:background=
"@drawable/bg_white_radius_12"
>
<TextView
android:id=
"@+id/dialog_message"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerHorizontal=
"true"
android:layout_marginTop=
"48dp"
android:layout_marginBottom=
"47dp"
android:text=
"是否确定删除?"
android:textSize=
"16sp"
android:textColor=
"#FF333333"
/>
<View
android:id=
"@+id/view_divider"
android:layout_width=
"match_parent"
android:layout_height=
"1dp"
android:layout_below=
"@id/dialog_message"
android:background=
"@color/bg_grey"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:paddingTop=
"15dp"
android:paddingBottom=
"15dp"
android:orientation=
"horizontal"
android:gravity=
"center_vertical"
android:layout_below=
"@id/view_divider"
>
<TextView
android:id=
"@+id/dialog_negative_button"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:gravity=
"center_horizontal"
android:text=
"取消"
android:textSize=
"16sp"
android:textColor=
"#FF333333"
/>
<TextView
android:id=
"@+id/dialog_positive_button"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:gravity=
"center_horizontal"
android:text=
"确定"
android:textSize=
"16sp"
android:textColor=
"#FF5971A4"
/>
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
</layout>
\ No newline at end of file
consumer/src/main/res/layout/dialog_custom_text.xml
0 → 100644
View file @
e6d0a96e
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<data>
<variable
name=
"model"
type=
"com.xx.xxviewlibrary.comm.RefuseDialogBean"
/>
<variable
name=
"dialog"
type=
"com.xx.hbhconsumer.dialog.CustomDialog"
/>
<import
type=
"android.view.View"
/>
</data>
<LinearLayout
android:layout_width=
"match_parent"
android:orientation=
"vertical"
android:background=
"@drawable/bg_white_radius_12"
android:layout_height=
"wrap_content"
>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:gravity=
"center"
android:id=
"@+id/tv_dct_content"
android:textColor=
"@color/black"
android:layout_marginTop=
"50dp"
android:text=
"@{model.main}"
android:layout_marginLeft=
"26dp"
android:layout_marginRight=
"26dp"
android:layout_marginBottom=
"50dp"
android:textSize=
"16sp"
/>
<View
android:layout_width=
"match_parent"
android:layout_height=
"1dp"
android:background=
"@color/line_grey"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"48dp"
android:orientation=
"horizontal"
>
<Button
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:id=
"@+id/btn_refuse"
android:background=
"#00000000"
android:onClick=
"@{dialog.refuseClick}"
android:visibility=
"@{model.refuseTxt==null? View.GONE : View.VISIBLE}"
android:textSize=
"16sp"
android:text=
"@{model.refuseTxt.toString()}"
android:textColor=
"@color/text_grey"
/>
<Button
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:onClick=
"@{dialog.acceptClick}"
android:background=
"#00000000"
android:textSize=
"16sp"
android:text=
"@{model.sureTxt.toString()}"
android:visibility=
"@{model.sureTxt==null? View.GONE : View.VISIBLE}"
android:textColor=
"@color/text_foreground"
/>
</LinearLayout>
</LinearLayout>
</layout>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment