Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Room Park Android
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
0
Merge Requests
0
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
Vladislav Bogdashkin
Room Park Android
Commits
102fada9
Commit
102fada9
authored
Oct 18, 2019
by
Vladislav Bogdashkin
🎣
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
deal status progress
deal card
parent
4638bb65
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
357 additions
and
74 deletions
+357
-74
deals.kt
...va/com/biganto/visual/roompark/domain/interactor/deals.kt
+1
-1
ScreenContract.kt
...sual/roompark/presentation/screen/deals/ScreenContract.kt
+36
-0
ScreenController.kt
...al/roompark/presentation/screen/deals/ScreenController.kt
+31
-1
ScreenPresenter.kt
...ual/roompark/presentation/screen/deals/ScreenPresenter.kt
+10
-0
ScreenViewState.kt
...ual/roompark/presentation/screen/deals/ScreenViewState.kt
+3
-1
Adapter.kt
...visual/roompark/presentation/screen/deals/util/Adapter.kt
+69
-23
FavoritesAdapter.kt
...rk/presentation/screen/favorites/util/FavoritesAdapter.kt
+6
-6
StatusProgressCeil.kt
...ark/view_utils/status_progress_view/StatusProgressCeil.kt
+12
-6
deal_card_viewholder.xml
app/src/main/res/layout/deal_card_viewholder.xml
+52
-35
progress_deal_state_pattern_view.xml
app/src/main/res/layout/progress_deal_state_pattern_view.xml
+0
-1
progress_deal_state_pattern_view_horizontal.xml
...es/layout/progress_deal_state_pattern_view_horizontal.xml
+130
-0
status_view.xml
app/src/main/res/layout/status_view.xml
+7
-0
No files found.
app/src/main/java/com/biganto/visual/roompark/domain/interactor/deals.kt
View file @
102fada9
...
...
@@ -12,7 +12,7 @@ class DealsInteractor @Inject constructor(
){
fun
fetchDeals
()
=
Single
.
just
(
arrayListOf
(
dealFlat
,
dealParkign
))
fun
getStatusList
()
=
Single
.
just
(
statusList
.
sort
By
{
it
.
orderId
})
fun
getStatusList
()
=
Single
.
just
(
statusList
.
sort
edBy
{
it
.
orderId
})
companion
object
{
...
...
app/src/main/java/com/biganto/visual/roompark/presentation/screen/deals/ScreenContract.kt
View file @
102fada9
package
com.biganto.visual.roompark.presentation.screen.deals
import
com.biganto.visual.roompark.conductor.BigantoBaseContract
import
com.biganto.visual.roompark.domain.model.DealModel
import
com.biganto.visual.roompark.domain.model.StatusModel
/**
* Created by Vladislav Bogdashkin on 30.09.2019.
...
...
@@ -9,3 +11,37 @@ import com.biganto.visual.roompark.conductor.BigantoBaseContract
interface
DealsScreen
:
BigantoBaseContract
<
DealsScreenViewState
>
{
}
data class
DealPreviewModel
(
val
id
:
String
,
val
type
:
String
,
val
name
:
String
,
val
building
:
Int
?,
val
section
:
Int
?,
val
floor
:
Int
?,
val
area
:
Float
?,
val
statusNo
:
Int
,
val
dealSum
:
Int
,
val
dealPayout
:
Int
,
val
dealToPay
:
Int
,
val
dealTourIds
:
List
<
Int
?>?,
val
isViewed
:
Boolean
=
true
,
val
statusList
:
List
<
StatusModel
>
){
constructor
(
data
:
Pair
<
DealModel
,
List
<
StatusModel
>>)
:
this
(
data
.
first
.
id
,
data
.
first
.
estate
.
type
,
data
.
first
.
estate
.
number
,
data
.
first
.
estate
.
commonInfo
?.
building
,
data
.
first
.
estate
.
commonInfo
?.
section_begin
,
data
.
first
.
estate
.
commonInfo
?.
floor
,
data
.
first
.
estate
.
commonInfo
?.
area
,
data
.
first
.
statusId
,
data
.
first
.
opportunitySum
,
data
.
first
.
paymentSum
,
data
.
first
.
amount_pay_sum
,
arrayListOf
<
Int
?>(
data
.
first
.
estate
.
multitourId
),
false
,
data
.
second
)
}
\ No newline at end of file
app/src/main/java/com/biganto/visual/roompark/presentation/screen/deals/ScreenController.kt
View file @
102fada9
package
com.biganto.visual.roompark.presentation.screen.deals
import
android.view.View
import
androidx.recyclerview.widget.LinearLayoutManager
import
androidx.recyclerview.widget.RecyclerView
import
butterknife.BindView
import
com.biganto.visual.roompark.R
import
com.biganto.visual.roompark.base.RoomParkApplication
import
com.biganto.visual.roompark.base.RoomParkMainActivity
import
com.biganto.visual.roompark.conductor.BigantoBaseController
import
com.biganto.visual.roompark.presentation.screen.deals.util.DealsListAdapter
import
com.biganto.visual.roompark.view_utils.grid.CeilsDecoration
import
timber.log.Timber
import
javax.inject.Inject
...
...
@@ -22,12 +27,30 @@ class DealsScreenController :
getComponent
()
}
@BindView
(
R
.
id
.
favorites_cards_recycler_view
)
lateinit
var
favoritesRecyclerView
:
RecyclerView
private
fun
bindRecycler
()
{
favoritesRecyclerView
.
isNestedScrollingEnabled
=
true
favoritesRecyclerView
.
layoutManager
=
LinearLayoutManager
(
activity
,
RecyclerView
.
VERTICAL
,
false
)
favoritesRecyclerView
.
adapter
=
DealsListAdapter
()
favoritesRecyclerView
.
itemAnimator
=
null
if
(
favoritesRecyclerView
.
itemDecorationCount
==
0
)
favoritesRecyclerView
.
addItemDecoration
(
CeilsDecoration
(
1
,
resources
?.
getDimensionPixelSize
(
R
.
dimen
.
ceil_grid_padding
))
)
}
@Inject
override
lateinit
var
injectedPresenter
:
DealsScreenPresenter
override
fun
onViewBound
(
v
:
View
)
{
bindRecycler
()
}
override
fun
render
(
viewState
:
DealsScreenViewState
)
{
...
...
@@ -35,6 +58,7 @@ class DealsScreenController :
Timber
.
d
(
"Render state $viewState"
)
when
(
viewState
){
is
DealsScreenViewState
.
Idle
->
render
(
viewState
)
is
DealsScreenViewState
.
DealsLoaded
->
render
(
viewState
)
}
}
...
...
@@ -42,6 +66,12 @@ class DealsScreenController :
}
private
fun
render
(
viewState
:
DealsScreenViewState
.
DealsLoaded
){
(
favoritesRecyclerView
.
adapter
as
DealsListAdapter
).
addItems
(
viewState
.
items
)
}
private
fun
getComponent
()
=
DaggerDealsScreenComponent
.
factory
()
.
create
(
RoomParkApplication
.
component
,
activity
as
RoomParkMainActivity
)
.
inject
(
this
)
...
...
app/src/main/java/com/biganto/visual/roompark/presentation/screen/deals/ScreenPresenter.kt
View file @
102fada9
...
...
@@ -20,7 +20,17 @@ class DealsScreenPresenter @Inject constructor(
override
fun
bindIntents
()
{
val
getStatusList
=
interactor
.
getStatusList
()
val
fetchDeals
=
interactor
.
fetchDeals
()
.
flatMap
{
deals
->
getStatusList
.
map
{
List
(
deals
.
size
)
{
index
->
DealPreviewModel
(
Pair
(
deals
[
index
],
it
))
}
}
}
.
map
(
DealsScreenViewState
::
DealsLoaded
)
val
state
=
restoreStateObservable
.
mergeWith
(
fetchDeals
)
.
doOnError
{
Timber
.
e
(
it
)}
.
subscribeOn
(
Schedulers
.
io
())
.
observeOn
(
AndroidSchedulers
.
mainThread
())
...
...
app/src/main/java/com/biganto/visual/roompark/presentation/screen/deals/ScreenViewState.kt
View file @
102fada9
...
...
@@ -9,4 +9,6 @@ import com.biganto.visual.roompark.conductor.BigantoBaseViewState
sealed
class
DealsScreenViewState
:
BigantoBaseViewState
()
{
class
Idle
:
DealsScreenViewState
()
class
DealsLoaded
(
val
items
:
List
<
DealPreviewModel
>)
:
DealsScreenViewState
()
}
app/src/main/java/com/biganto/visual/roompark/presentation/screen/deals/util/Adapter.kt
View file @
102fada9
package
com.biganto.visual.roompark.presentation.screen.deals.util
import
android.view.Gravity
import
android.view.LayoutInflater
import
android.view.View
import
android.view.ViewGroup
import
android.widget.LinearLayout
import
android.widget.TextView
import
androidx.recyclerview.widget.RecyclerView
import
butterknife.BindView
import
butterknife.ButterKnife
import
com.biganto.visual.roompark.R
import
com.biganto.visual.roompark.domain.model.CommonInfoModel
import
com.biganto.visual.roompark.domain.model.DealModel
import
com.biganto.visual.roompark.domain.model.StatusModel
import
com.biganto.visual.roompark.presentation.screen.deals.DealPreviewModel
import
com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressAnimationState
import
com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
import
timber.log.Timber
/**
* Created by Vladislav Bogdashkin on 16.10.2019.
*/
class
DealsListAdapter
:
RecyclerView
.
Adapter
<
CamList
ViewHolder
>()
{
class
DealsListAdapter
:
RecyclerView
.
Adapter
<
Deal
ViewHolder
>()
{
private
var
list
:
MutableList
<
DealModel
>
=
mutableListOf
()
private
var
list
:
MutableList
<
Deal
Preview
Model
>
=
mutableListOf
()
fun
addItems
(
list
:
List
<
DealModel
>){
fun
addItems
(
list
:
List
<
Deal
Preview
Model
>){
this
.
list
.
clear
()
this
.
list
.
addAll
(
list
)
notifyDataSetChanged
()
}
override
fun
onCreateViewHolder
(
parent
:
ViewGroup
,
viewType
:
Int
):
CamList
ViewHolder
=
CamList
ViewHolder
(
override
fun
onCreateViewHolder
(
parent
:
ViewGroup
,
viewType
:
Int
):
Deal
ViewHolder
=
Deal
ViewHolder
(
LayoutInflater
.
from
(
parent
.
context
)
.
inflate
(
R
.
layout
.
favorite
_card_viewholder
,
parent
,
false
)
.
inflate
(
R
.
layout
.
deal
_card_viewholder
,
parent
,
false
)
)
override
fun
getItemCount
():
Int
=
list
.
size
override
fun
onBindViewHolder
(
holder
:
CamList
ViewHolder
,
position
:
Int
)
{
override
fun
onBindViewHolder
(
holder
:
Deal
ViewHolder
,
position
:
Int
)
{
holder
.
bindModel
(
list
[
position
])
}
}
class
CamList
ViewHolder
(
itemView
:
View
)
:
RecyclerView
.
ViewHolder
(
itemView
)
{
class
Deal
ViewHolder
(
itemView
:
View
)
:
RecyclerView
.
ViewHolder
(
itemView
)
{
@BindView
(
R
.
id
.
object_card_title
)
lateinit
var
estateTitle
:
TextView
@BindView
(
R
.
id
.
deal_card_header
)
lateinit
var
estateTitle
:
TextView
@BindView
(
R
.
id
.
common_info_block
)
lateinit
var
commonInfo
:
View
@BindView
(
R
.
id
.
start_tour_button
)
lateinit
var
startTour
:
View
...
...
@@ -54,6 +59,8 @@ class CamListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
@BindView
(
R
.
id
.
deal_payed_value_text_view
)
lateinit
var
dealPayed
:
TextView
@BindView
(
R
.
id
.
deal_to_pay_value_text_view
)
lateinit
var
dealSumToPay
:
TextView
@BindView
(
R
.
id
.
progress_holder
)
lateinit
var
statusContainer
:
LinearLayout
fun
typeName
(
type
:
String
)
=
when
(
type
){
"flat"
->
"КВАРТИРА"
...
...
@@ -66,29 +73,29 @@ class CamListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
ButterKnife
.
bind
(
this
,
itemView
)
}
fun
bindModel
(
deal
:
DealModel
)
{
val
model
=
deal
.
estate
val
fullObjName
=
"${typeName(model.type)}\n${model.number}"
fun
bindModel
(
deal
:
DealPreviewModel
)
{
val
fullObjName
=
"${typeName(deal.type)}\n${deal.name}"
estateTitle
.
text
=
fullObjName
if
(
model
.
commonInfo
==
null
)
commonInfo
.
visibility
=
View
.
GONE
else
{
commonInfo
.
visibility
=
View
.
VISIBLE
;
renderCommonInfo
(
model
.
commonInfo
)}
renderCommonInfo
(
deal
)
if
(
model
.
type
==
"flat"
)
startTour
.
visibility
=
View
.
VISIBLE
if
(
deal
.
dealTourIds
.
isNullOrEmpty
()
)
startTour
.
visibility
=
View
.
VISIBLE
else
startTour
.
visibility
=
View
.
GONE
dealSum
.
text
=
deal
.
opportunitySum
.
toRubly
()
dealPayed
.
text
=
deal
.
paymentSum
.
toRubly
()
dealSumToPay
.
text
=
deal
.
amount_pay_sum
.
toRubly
()
dealSum
.
text
=
deal
.
dealSum
.
toRubly
()
dealPayed
.
text
=
deal
.
dealPayout
.
toRubly
()
dealSumToPay
.
text
=
deal
.
dealToPay
.
toRubly
()
createStatusView
(
statusContainer
,
deal
.
statusList
,
deal
.
statusNo
,
false
)
}
fun
renderCommonInfo
(
info
:
CommonInfo
Model
){
private
fun
renderCommonInfo
(
info
:
DealPreview
Model
){
if
(
info
.
building
==
null
)
info1
.
visibility
=
View
.
GONE
else
{
info1
.
title
().
text
=
"Корпус"
;
info1
.
text
().
text
=
info
.
building
.
toString
()}
if
(
info
.
section
_begin
==
null
)
info1
.
visibility
=
View
.
GONE
else
{
info2
.
title
().
text
=
"Секция"
;
info2
.
text
().
text
=
info
.
section
_begin
.
toString
()}
if
(
info
.
section
==
null
)
info1
.
visibility
=
View
.
GONE
else
{
info2
.
title
().
text
=
"Секция"
;
info2
.
text
().
text
=
info
.
section
.
toString
()}
if
(
info
.
floor
==
null
)
info1
.
visibility
=
View
.
GONE
else
{
info3
.
title
().
text
=
"Этаж"
;
info3
.
text
().
text
=
info
.
floor
.
toString
()}
...
...
@@ -103,6 +110,45 @@ class CamListViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
return
String
.
format
(
"%,d \u20BD"
,
this
).
replace
(
','
,
' '
)
}
}
fun
createStatusView
(
container
:
ViewGroup
,
list
:
List
<
StatusModel
>,
currentStatus
:
Int
,
isVertical
:
Boolean
){
container
.
removeAllViews
()
val
scale
=
container
.
resources
.
displayMetrics
.
density
.
toDouble
()
val
param24dp
=
kotlin
.
math
.
ceil
(
24
*
scale
).
toInt
()
val
wrapContent
=
ViewGroup
.
LayoutParams
.
WRAP_CONTENT
(
container
as
LinearLayout
).
weightSum
=
10f
list
.
sortedBy
{
it
.
orderId
}.
forEach
{
val
ceil
=
LayoutInflater
.
from
(
container
.
context
)
.
inflate
(
R
.
layout
.
status_view
,
container
,
false
)
as
StatusProgressCeil
ceil
.
layoutParams
.
height
=
if
(
isVertical
)
wrapContent
else
param24dp
ceil
.
layoutParams
.
width
=
if
(
isVertical
)
param24dp
else
wrapContent
(
ceil
.
layoutParams
as
LinearLayout
.
LayoutParams
).
weight
=
1f
(
ceil
.
layoutParams
as
LinearLayout
.
LayoutParams
).
gravity
=
Gravity
.
BOTTOM
Timber
.
d
(
"${it.orderId-1} != ${list.size}"
)
ceil
.
setHasEnd
(
it
.
orderId
!=
list
.
size
)
ceil
.
setHasStart
(
it
.
orderId
>
1
)
Timber
.
d
(
"${it.orderId} == ${currentStatus}"
)
ceil
.
setIsEnabled
(
it
.
orderId
<=
currentStatus
)
Timber
.
d
(
"${it.orderId} <= ${currentStatus}"
)
ceil
.
setNext
(
it
.
orderId
<
currentStatus
)
if
(
it
.
orderId
>
currentStatus
)
ceil
.
setAnimState
(
StatusProgressAnimationState
.
DISABLE
)
ceil
.
invalidate
()
container
.
addView
(
ceil
)
Timber
.
d
(
"created view : $param24dp"
)
}
container
.
invalidate
()
}
\ No newline at end of file
app/src/main/java/com/biganto/visual/roompark/presentation/screen/favorites/util/FavoritesAdapter.kt
View file @
102fada9
...
...
@@ -15,7 +15,7 @@ import com.biganto.visual.roompark.domain.model.EstateModel
* Created by Vladislav Bogdashkin on 16.10.2019.
*/
class
FavoritesListAdapter
:
RecyclerView
.
Adapter
<
Deal
ViewHolder
>()
{
class
FavoritesListAdapter
:
RecyclerView
.
Adapter
<
Favorite
ViewHolder
>()
{
private
var
list
:
MutableList
<
EstateModel
>
=
mutableListOf
()
...
...
@@ -25,21 +25,21 @@ class FavoritesListAdapter : RecyclerView.Adapter<DealViewHolder>() {
notifyDataSetChanged
()
}
override
fun
onCreateViewHolder
(
parent
:
ViewGroup
,
viewType
:
Int
):
Deal
ViewHolder
=
Deal
ViewHolder
(
override
fun
onCreateViewHolder
(
parent
:
ViewGroup
,
viewType
:
Int
):
Favorite
ViewHolder
=
Favorite
ViewHolder
(
LayoutInflater
.
from
(
parent
.
context
)
.
inflate
(
R
.
layout
.
deal
_card_viewholder
,
parent
,
false
)
.
inflate
(
R
.
layout
.
favorite
_card_viewholder
,
parent
,
false
)
)
override
fun
getItemCount
():
Int
=
list
.
size
override
fun
onBindViewHolder
(
holder
:
Deal
ViewHolder
,
position
:
Int
)
{
override
fun
onBindViewHolder
(
holder
:
Favorite
ViewHolder
,
position
:
Int
)
{
holder
.
bindModel
(
list
[
position
])
}
}
class
Deal
ViewHolder
(
itemView
:
View
)
:
RecyclerView
.
ViewHolder
(
itemView
)
{
class
Favorite
ViewHolder
(
itemView
:
View
)
:
RecyclerView
.
ViewHolder
(
itemView
)
{
@BindView
(
R
.
id
.
object_card_title
)
lateinit
var
estateTitle
:
TextView
@BindView
(
R
.
id
.
common_info_block
)
lateinit
var
commonInfo
:
View
...
...
app/src/main/java/com/biganto/visual/roompark/view_utils/status_progress_view/StatusProgressCeil.kt
View file @
102fada9
...
...
@@ -26,17 +26,23 @@ class StatusProgressCeil @JvmOverloads constructor(
private
var
animateState
:
StatusProgressAnimationState
=
StatusProgressAnimationState
.
fromInt
(
array
.
getInt
(
R
.
styleable
.
StatusProgressCeil_anim_state
,
1
))
private
va
l
hasStart
:
Boolean
=
private
va
r
hasStart
:
Boolean
=
array
.
getBoolean
(
R
.
styleable
.
StatusProgressCeil_hasStart
,
false
)
private
va
l
hasEnd
:
Boolean
=
private
va
r
hasEnd
:
Boolean
=
array
.
getBoolean
(
R
.
styleable
.
StatusProgressCeil_hasEnd
,
false
)
private
va
l
isEnable
:
Boolean
=
private
va
r
isEnable
:
Boolean
=
array
.
getBoolean
(
R
.
styleable
.
StatusProgressCeil_isEnable
,
false
)
private
va
l
nextEnable
:
Boolean
=
private
va
r
nextEnable
:
Boolean
=
array
.
getBoolean
(
R
.
styleable
.
StatusProgressCeil_nextEnable
,
false
)
val
animationTimeMills
:
Long
=
80L
var
lastAnimateStateChanged
:
Long
=
0L
fun
setHasStart
(
has
:
Boolean
)
{
hasStart
=
has
}
fun
setHasEnd
(
has
:
Boolean
)
{
hasEnd
=
has
}
fun
setIsEnabled
(
isEnable
:
Boolean
)
{
this
.
isEnable
=
isEnable
}
fun
setNext
(
nextisEnable
:
Boolean
)
{
nextEnable
=
nextisEnable
}
fun
setAnimState
(
state
:
StatusProgressAnimationState
)
{
animateState
=
state
}
private
val
animationTimeMills
:
Long
=
80L
private
var
lastAnimateStateChanged
:
Long
=
0L
val
ifAnimateEnd
:
Boolean
get
(){
return
(
System
.
currentTimeMillis
()-
lastAnimateStateChanged
)
>
animationTimeMills
...
...
app/src/main/res/layout/deal_card_viewholder.xml
View file @
102fada9
...
...
@@ -27,11 +27,12 @@
android:layout_marginTop=
"16dp"
/>
<LinearLayout
android:id=
"@+id/common_info_block"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"16dp"
android:layout_marginEnd=
"16dp"
android:layout_marginTop=
"8dp"
android:layout_marginEnd=
"16dp"
android:orientation=
"horizontal"
>
<include
...
...
@@ -64,10 +65,25 @@
</LinearLayout>
<include
layout=
"@layout/test_progress_status"
android:layout_height=
"wrap_content"
<LinearLayout
android:id=
"@+id/progress_holder"
android:orientation=
"horizontal"
android:layout_height=
"60dp"
android:layout_width=
"match_parent"
/>
android:background=
"@drawable/gradient_background_accent"
>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:layout_width=
"24dp"
android:layout_height=
"wrap_content"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:layout_width=
"24dp"
android:layout_height=
"wrap_content"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:layout_width=
"24dp"
android:layout_height=
"wrap_content"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
...
...
@@ -166,6 +182,7 @@
</LinearLayout>
<include
android:id=
"@+id/start_tour_button"
layout=
"@layout/start_tour_viewholder"
android:layout_width=
"match_parent"
android:layout_height=
"64dp"
...
...
app/src/main/res/layout/progress_deal_state_pattern_view.xml
View file @
102fada9
...
...
@@ -11,7 +11,6 @@
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:layout_width=
"wrap_content"
android:layout_height=
"24dp"
android:scaleType=
"fitEnd"
app:direction=
"vertical"
app:hasEnd=
"true"
app:hasStart=
"false"
...
...
app/src/main/res/layout/progress_deal_state_pattern_view_horizontal.xml
0 → 100644
View file @
102fada9
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:id=
"@+id/sum"
android:layout_width=
"match_parent"
android:layout_height=
"24dp"
android:background=
"@color/colorCheckListGradientEnd"
android:orientation=
"horizontal"
android:weightSum=
"10"
>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
app:direction=
"horizontal"
app:hasEnd=
"true"
app:hasStart=
"false"
app:isEnable=
"true"
app:nextEnable=
"true"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:id=
"@+id/statusProgressCeil2"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:scaleType=
"fitEnd"
app:direction=
"horizontal"
app:hasEnd=
"true"
app:hasStart=
"true"
app:isEnable=
"true"
app:nextEnable=
"true"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:id=
"@+id/statusProgressCeil4"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:scaleType=
"fitEnd"
app:direction=
"horizontal"
app:hasEnd=
"true"
app:hasStart=
"true"
app:isEnable=
"true"
app:nextEnable=
"true"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:id=
"@+id/statusProgressCeil5"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:scaleType=
"fitEnd"
app:direction=
"horizontal"
app:hasEnd=
"true"
app:hasStart=
"true"
app:isEnable=
"true"
app:nextEnable=
"true"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:id=
"@+id/statusProgressCeil6"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:scaleType=
"fitEnd"
app:direction=
"horizontal"
app:hasEnd=
"true"
app:hasStart=
"true"
app:isEnable=
"true"
app:nextEnable=
"true"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:id=
"@+id/statusProgressCeil3"
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:scaleType=
"fitEnd"
app:direction=
"horizontal"
app:hasEnd=
"true"
app:hasStart=
"true"
app:isEnable=
"true"
app:nextEnable=
"true"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:scaleType=
"fitEnd"
app:direction=
"horizontal"
app:hasEnd=
"true"
app:hasStart=
"true"
app:isEnable=
"true"
app:nextEnable=
"true"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:scaleType=
"fitEnd"
app:direction=
"horizontal"
app:hasEnd=
"true"
app:hasStart=
"true"
app:isEnable=
"true"
app:nextEnable=
"true"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:scaleType=
"fitEnd"
app:direction=
"horizontal"
app:hasEnd=
"true"
app:hasStart=
"true"
app:isEnable=
"true"
app:nextEnable=
"false"
/>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
android:layout_width=
"wrap_content"
android:layout_height=
"match_parent"
android:layout_weight=
"1"
android:scaleType=
"fitEnd"
app:anim_state=
"disable"
app:direction=
"horizontal"
app:hasEnd=
"false"
app:hasStart=
"true"
app:isEnable=
"false"
app:nextEnable=
"false"
/>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/status_view.xml
0 → 100644
View file @
102fada9
<?xml version="1.0" encoding="utf-8"?>
<com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
>
</com.biganto.visual.roompark.view_utils.status_progress_view.StatusProgressCeil>
\ 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