Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
吳展維
final
Commits
9d141364
Commit
9d141364
authored
2 years ago
by
蔡芝泰
Browse files
Options
Download
Email Patches
Plain Diff
latest
parent
b5acece3
master
main
No related merge requests found
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
app/src/main/java/com/example/jetsnack/database/User.kt
+30
-9
app/src/main/java/com/example/jetsnack/database/User.kt
app/src/main/java/com/example/jetsnack/database/eggs.kt
+1
-1
app/src/main/java/com/example/jetsnack/database/eggs.kt
app/src/main/java/com/example/jetsnack/ui/home/Home.kt
+14
-5
app/src/main/java/com/example/jetsnack/ui/home/Home.kt
app/src/main/java/com/example/jetsnack/ui/home/商店.kt
+12
-7
app/src/main/java/com/example/jetsnack/ui/home/商店.kt
app/src/main/java/com/example/jetsnack/ui/home/多人模式.kt
+59
-3
app/src/main/java/com/example/jetsnack/ui/home/多人模式.kt
app/src/main/java/com/example/jetsnack/ui/home/多人模式2.kt
+1
-1
app/src/main/java/com/example/jetsnack/ui/home/多人模式2.kt
app/src/main/java/com/example/jetsnack/ui/home/完成專注多人.kt
+80
-72
app/src/main/java/com/example/jetsnack/ui/home/完成專注多人.kt
app/src/main/java/com/example/jetsnack/ui/home/專注過程.kt
+3
-3
app/src/main/java/com/example/jetsnack/ui/home/專注過程.kt
app/src/main/java/com/example/jetsnack/ui/home/專注過程多人.kt
+30
-10
app/src/main/java/com/example/jetsnack/ui/home/專注過程多人.kt
app/src/main/java/com/example/jetsnack/ui/home/朋友列表.kt
+6
-2
app/src/main/java/com/example/jetsnack/ui/home/朋友列表.kt
app/src/main/java/com/example/jetsnack/ui/home/設定.kt
+7
-4
app/src/main/java/com/example/jetsnack/ui/home/設定.kt
app/src/main/res/layout/activity_chat_log.xml
+3
-3
app/src/main/res/layout/activity_chat_log.xml
buildSrc/build/kotlin/buildSrcjar-classes.txt
+1
-1
buildSrc/build/kotlin/buildSrcjar-classes.txt
buildSrc/build/libs/buildSrc.jar
+0
-0
buildSrc/build/libs/buildSrc.jar
buildSrc/build/pluginUnderTestMetadata/plugin-under-test-metadata.properties
+1
-1
...inUnderTestMetadata/plugin-under-test-metadata.properties
with
248 additions
and
122 deletions
+248
-122
app/src/main/java/com/example/jetsnack/database/User.kt
View file @
9d141364
package
com.example.jetsnack.database
import
androidx.annotation.DrawableRes
import
com.example.jetsnack.R
data class
User
(
val
id
:
String
,
val
key
:
Int
,
val
key
:
Int
,
var
name
:
String
,
@DrawableRes
var
equipDog
:
Int
,
var
achievement
:
ArrayList
<
Int
>,
var
own_dogs
:
ArrayList
<
Int
>,
var
own_dogs
:
ArrayList
<
Int
>,
var
introduction
:
String
,
var
money
:
Int
,
var
continue_focus_time
:
Int
,
var
total_
_
focus_time
:
Int
,
var
friend_number
:
Int
,
var
continue_login_day
:
Int
,
var
last_login_day
:
Int
,
var
day_focus_time
:
Int
,
var
money
:
Int
,
var
continue_focus_time
:
Int
,
var
total_focus_time
:
Int
,
var
friend_number
:
Int
,
var
continue_login_day
:
Int
,
var
last_login_day
:
Int
,
var
day_focus_time
:
Int
,
var
notification
:
Boolean
,
var
new_friend
:
Boolean
,
var
moon
:
Boolean
,
)
var
user
=
User
(
id
=
"abcd"
,
key
=
1877
,
name
=
"Anderson"
,
equipDog
=
Dogs
[
1
].
picture
,
achievement
=
ArrayList
(),
own_dogs
=
ArrayList
(),
introduction
=
"Hi"
,
money
=
1500
,
continue_focus_time
=
1
,
total_focus_time
=
1
,
friend_number
=
1
,
continue_login_day
=
1
,
last_login_day
=
1
,
day_focus_time
=
1
,
notification
=
false
,
new_friend
=
true
,
moon
=
true
)
\ No newline at end of file
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/database/eggs.kt
View file @
9d141364
...
...
@@ -7,7 +7,7 @@ import com.example.jetsnack.R
data class
Egg
(
val
id
:
Long
,
val
name
:
String
,
val
price
:
Long
,
val
price
:
Int
,
@DrawableRes
val
picture
:
Int
,
val
color
:
Long
,
...
...
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/ui/home/Home.kt
View file @
9d141364
...
...
@@ -103,13 +103,22 @@ fun NavGraphBuilder.addHomeGraph(
composable
(
"hatchEggs"
)
{
HatchEggs
(
modifier
=
Modifier
,
navController
=
navController
)
}
composable
(
"
focusProces
sMul"
){
FocusProces
sMul
(
navController
=
navController
)
composable
(
"
completeFocu
sMul"
){
CompleteFocu
sMul
(
navController
=
navController
)
}
composable
(
"mulModeHost"
){
composable
(
"focusProcessMul/{total}"
,
arguments
=
listOf
(
navArgument
(
"total"
){
type
=
NavType
.
IntType
})
)
{
val
total
=
it
.
arguments
?.
getInt
(
"total"
)
if
(
total
!=
null
)
{
FocusProcessMul
(
navController
=
navController
,
total
=
total
)
}
}
composable
(
"mulModeHost"
)
{
MulModeHost
(
navController
=
navController
)
}
composable
(
"mulModeGuest"
){
composable
(
"mulModeGuest"
)
{
MulModeGuest
(
navController
=
navController
)
}
composable
(
"completeFocus"
)
{
...
...
@@ -197,7 +206,7 @@ fun NavGraphBuilder.addHomeGraph(
})
)
{
val
id
=
it
.
arguments
?.
getInt
(
"friend"
)
CheckUpNewFriend
(
id
=
id
!!
,
modifier
=
modifier
,
navController
=
navController
)
CheckUpNewFriend
(
id
=
id
!!
,
modifier
=
modifier
,
navController
=
navController
)
}
}
...
...
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/ui/home/商店.kt
View file @
9d141364
...
...
@@ -26,9 +26,7 @@ import androidx.compose.foundation.lazy.itemsIndexed
import
androidx.compose.foundation.shape.RoundedCornerShape
import
androidx.compose.material.MaterialTheme
import
androidx.compose.material.Text
import
androidx.compose.runtime.Composable
import
androidx.compose.runtime.key
import
androidx.compose.runtime.remember
import
androidx.compose.runtime.*
import
androidx.compose.ui.Alignment
import
androidx.compose.ui.Modifier
import
androidx.compose.ui.draw.clip
...
...
@@ -42,6 +40,7 @@ import androidx.compose.ui.unit.sp
import
com.example.jetsnack.R
import
com.example.jetsnack.database.Egg
import
com.example.jetsnack.database.Eggs
import
com.example.jetsnack.database.user
import
com.example.jetsnack.model.SnackCollection
import
com.example.jetsnack.model.SnackRepo
import
com.example.jetsnack.ui.components.*
...
...
@@ -62,7 +61,7 @@ fun Shop(
@Composable
private
fun
Shop
(
eggscollection
:
List
<
Egg
>,
modifier
:
Modifier
=
Modifier
)
{
var
money
by
remember
{
mutableStateOf
(
user
.
money
)
}
LazyColumn
{
item
{
Spacer
(
...
...
@@ -84,7 +83,10 @@ private fun Shop(eggscollection: List<Egg>, modifier: Modifier = Modifier) {
.
clip
(
RoundedCornerShape
(
20
.
dp
))
.
background
(
Color
(
eggscollection
[
data
*
2
].
color
))
.
width
(
180
.
dp
)
.
clickable
{
/*todo*/
}
.
clickable
{
money
-=
eggscollection
[
data
*
2
].
price
user
.
money
-=
eggscollection
[
data
*
2
].
price
}
)
{
Spacer
(
Modifier
.
height
(
20
.
dp
))
Box
(
...
...
@@ -138,7 +140,10 @@ private fun Shop(eggscollection: List<Egg>, modifier: Modifier = Modifier) {
.
clip
(
RoundedCornerShape
(
20
.
dp
))
.
background
(
Color
(
eggscollection
[
data
*
2
+
1
].
color
))
.
width
(
180
.
dp
)
.
clickable
{
/*todo*/
}
.
clickable
{
money
-=
eggscollection
[
data
*
2
+
1
].
price
user
.
money
-=
eggscollection
[
data
*
2
+
1
].
price
}
)
{
Spacer
(
Modifier
.
height
(
20
.
dp
))
...
...
@@ -219,7 +224,7 @@ private fun Shop(eggscollection: List<Egg>, modifier: Modifier = Modifier) {
modifier
=
modifier
.
width
(
120
.
dp
)
)
{
Text
(
text
=
"1500"
,
text
=
money
.
toString
()
,
style
=
MaterialTheme
.
typography
.
h3
,
textAlign
=
TextAlign
.
Center
,
fontSize
=
16
.
sp
,
...
...
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/ui/home/多人模式.kt
View file @
9d141364
...
...
@@ -46,18 +46,21 @@ import com.example.jetsnack.database.Dogs
import
com.example.jetsnack.database.Select_index
import
com.example.jetsnack.ui.components.JetsnackDivider
import
com.example.jetsnack.ui.theme.*
import
java.time.format.TextStyle
@OptIn
(
ExperimentalComposeUiApi
::
class
)
@Composable
fun
MulModeHost
(
modifier
:
Modifier
=
Modifier
,
navController
:
NavHostController
)
{
var
showAlertDialog1
by
remember
{
mutableStateOf
(
false
)
}
var
showAlertDialog2
by
remember
{
mutableStateOf
(
false
)
}
var
showAlertDialog3
by
remember
{
mutableStateOf
(
false
)
}
var
focus_state
by
remember
{
mutableStateOf
<
Hours
>(
FullHours
(
1
,
30
))
}
var
focus_hour
by
remember
{
mutableStateOf
(
1
)
}
var
focus_min
by
remember
{
mutableStateOf
(
30
)
}
var
rest_state
by
remember
{
mutableStateOf
<
Hours
>(
FullHours
(
2
,
0
))
}
var
rest_min
by
remember
{
mutableStateOf
(
2
)
}
var
rest_sec
by
remember
{
mutableStateOf
(
0
)
}
var
total
by
remember
{
mutableStateOf
(
0
)
}
Column
(
horizontalAlignment
=
Alignment
.
CenterHorizontally
)
{
val
selectindex
by
remember
{
mutableStateOf
(
Select_index
)
}
Spacer
(
Modifier
.
height
(
48
.
dp
))
...
...
@@ -77,7 +80,7 @@ fun MulModeHost(modifier: Modifier = Modifier, navController: NavHostController)
.
fillMaxWidth
()
.
height
(
30
.
dp
),
horizontalArrangement
=
Arrangement
.
SpaceBetween
,
verticalAlignment
=
Alignment
.
CenterVertically
/*
verticalAlignment = Alignment.CenterVertically
*/
)
{
Box
(
modifier
=
Modifier
...
...
@@ -102,7 +105,7 @@ fun MulModeHost(modifier: Modifier = Modifier, navController: NavHostController)
contentDescription
=
null
,
modifier
=
Modifier
.
fillMaxSize
()
.
clickable
{
}
.
clickable
{
showAlertDialog3
=
true
}
)
}
}
...
...
@@ -134,6 +137,7 @@ fun MulModeHost(modifier: Modifier = Modifier, navController: NavHostController)
.
clip
(
CircleShape
)
.
background
(
Shadow2
)
.
padding
(
10
.
dp
)
.
clickable
{
}
)
{
Image
(
painterResource
(
R
.
drawable
.
plus
),
...
...
@@ -151,6 +155,7 @@ fun MulModeHost(modifier: Modifier = Modifier, navController: NavHostController)
.
clip
(
CircleShape
)
.
background
(
Shadow2
)
.
padding
(
10
.
dp
)
.
clickable
{
}
)
{
Image
(
painterResource
(
R
.
drawable
.
plus
),
...
...
@@ -166,6 +171,7 @@ fun MulModeHost(modifier: Modifier = Modifier, navController: NavHostController)
.
clip
(
CircleShape
)
.
background
(
Shadow2
)
.
padding
(
10
.
dp
)
.
clickable
{
}
)
{
Image
(
painterResource
(
R
.
drawable
.
plus
),
...
...
@@ -207,7 +213,10 @@ fun MulModeHost(modifier: Modifier = Modifier, navController: NavHostController)
.
background
(
Shadow4
)
.
clickable
{
navController
.
navigate
(
"focusProcessMul"
)
}
.
clickable
{
total
=
focus_hour
*
3600
+
focus_min
*
60
navController
.
navigate
(
"focusProcessMul/$total"
)
}
)
{
Text
(
text
=
"多人開始"
,
color
=
Color
.
White
,
fontSize
=
20
.
sp
)
}
...
...
@@ -429,6 +438,53 @@ fun MulModeHost(modifier: Modifier = Modifier, navController: NavHostController)
}
}
}
)
}
//3
if
(
showAlertDialog3
)
{
AlertDialog
(
properties
=
DialogProperties
(
usePlatformDefaultWidth
=
false
),
modifier
=
Modifier
.
width
(
250
.
dp
)
.
height
(
120
.
dp
),
backgroundColor
=
Color
(
0xffffffff
),
contentColor
=
Color
(
0xff000000
),
onDismissRequest
=
{
showAlertDialog3
=
false
},
text
=
{
Column
(
horizontalAlignment
=
Alignment
.
CenterHorizontally
,
modifier
=
Modifier
.
fillMaxWidth
()
)
{
Text
(
text
=
"房間邀請碼"
,
fontSize
=
20
.
sp
,
color
=
Color
(
0xff000000
),
)
Spacer
(
Modifier
.
height
(
8
.
dp
))
Divider
(
modifier
=
Modifier
.
padding
(
horizontal
=
5
.
dp
),
color
=
Color
.
DarkGray
,
thickness
=
1
.
dp
,
)
Spacer
(
Modifier
.
height
(
8
.
dp
))
Text
(
text
=
"6EU56d"
,
fontSize
=
23
.
sp
,
color
=
Color
(
0xff000000
),
letterSpacing
=
3
.
sp
)
Spacer
(
Modifier
.
height
(
20
.
dp
))
}
},
title
=
{
},
buttons
=
{
}
)
}
...
...
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/ui/home/多人模式2.kt
View file @
9d141364
...
...
@@ -38,7 +38,7 @@ fun MulModeGuest(modifier: Modifier = Modifier, navController: NavHostController
.
height
(
700
.
dp
)
.
padding
(
20
.
dp
)
.
clip
(
RoundedCornerShape
(
10
.
dp
))
.
background
(
Shadow
1
)
.
background
(
Shadow
0
)
.
padding
(
10
.
dp
)
)
{
/**/
...
...
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/ui/home/完成專注多人.kt
View file @
9d141364
...
...
@@ -28,6 +28,9 @@ import androidx.compose.material.SnackbarDefaults.backgroundColor
import
androidx.compose.material.icons.Icons
import
androidx.compose.material.icons.filled.Favorite
import
androidx.compose.runtime.Composable
import
androidx.compose.runtime.getValue
import
androidx.compose.runtime.mutableStateOf
import
androidx.compose.runtime.remember
import
androidx.compose.ui.Alignment
import
androidx.compose.ui.Modifier
import
androidx.compose.ui.draw.clip
...
...
@@ -40,94 +43,99 @@ import androidx.compose.ui.text.style.TextAlign
import
androidx.compose.ui.tooling.preview.Preview
import
androidx.compose.ui.unit.dp
import
androidx.compose.ui.unit.sp
import
androidx.navigation.NavHostController
import
com.example.jetsnack.R
import
com.example.jetsnack.database.Dogs
import
com.example.jetsnack.database.Select_index
import
com.example.jetsnack.ui.components.JetsnackDivider
import
com.example.jetsnack.ui.theme.*
@Composable
fun
CompleteFocusMul
(
modifier
:
Modifier
=
Modifier
)
{
Column
(
horizontalAlignment
=
Alignment
.
CenterHorizontally
,
modifier
=
modifier
.
fillMaxSize
()
.
padding
(
24
.
dp
)
)
{
Spacer
(
Modifier
.
height
(
24
.
dp
))
Text
(
text
=
"Congratulations!"
,
fontSize
=
40
.
sp
)
Spacer
(
Modifier
.
height
(
24
.
dp
))
Text
(
text
=
"You and your friends achieved"
,
fontSize
=
24
.
sp
)
Text
(
text
=
"your goal!"
,
fontSize
=
24
.
sp
)
Spacer
(
Modifier
.
height
(
24
.
dp
))
Row
(
modifier
=
Modifier
.
fillMaxWidth
()
.
height
(
80
.
dp
),
horizontalArrangement
=
Arrangement
.
Center
,
verticalAlignment
=
Alignment
.
CenterVertically
fun
CompleteFocusMul
(
modifier
:
Modifier
=
Modifier
,
navController
:
NavHostController
)
{
val
selectindex
by
remember
{
mutableStateOf
(
Select_index
)
}
Column
(
horizontalAlignment
=
Alignment
.
CenterHorizontally
)
{
Spacer
(
Modifier
.
height
(
48
.
dp
))
Column
(
horizontalAlignment
=
Alignment
.
CenterHorizontally
,
modifier
=
modifier
.
fillMaxSize
()
.
padding
(
24
.
dp
)
)
{
Box
(
Spacer
(
Modifier
.
height
(
24
.
dp
))
Text
(
text
=
"Congratulations!"
,
fontSize
=
40
.
sp
)
Spacer
(
Modifier
.
height
(
24
.
dp
))
Text
(
text
=
"You and your friends achieved"
,
fontSize
=
24
.
sp
)
Text
(
text
=
"your goal!"
,
fontSize
=
24
.
sp
)
Spacer
(
Modifier
.
height
(
24
.
dp
))
Row
(
modifier
=
Modifier
.
padding
(
5
.
dp
)
.
clip
(
CircleShape
)
.
width
(
70
.
dp
)
.
height
(
70
.
dp
)
,
.
fillMaxWidth
()
.
height
(
80
.
dp
),
horizontalArrangement
=
Arrangement
.
Center
,
verticalAlignment
=
Alignment
.
CenterVertically
)
{
Image
(
painterResource
(
R
.
drawable
.
cat
),
contentDescription
=
null
,
Box
(
modifier
=
Modifier
.
fillMaxSize
(
)
.
cli
ckable
{
}
)
}
Box
(
modifier
=
Modifier
.
padding
(
5
.
dp
)
.
clip
(
CircleShap
e
)
.
width
(
70
.
dp
)
.
height
(
70
.
dp
),
)
{
Image
(
painterResource
(
R
.
drawable
.
dog1
),
contentDescription
=
null
,
.
size
(
60
.
dp
)
.
cli
p
(
CircleShape
)
.
background
(
Shadow2
)
.
padding
(
0
.
dp
)
.
padding
(
10
.
dp
)
)
{
Image
(
painterResource
(
Dogs
[
selectindex
].
pictur
e
)
,
contentDescription
=
null
,
modifier
=
Modifier
.
fillMaxSize
()
)
}
Spacer
(
Modifier
.
width
(
10
.
dp
))
Box
(
modifier
=
Modifier
.
fillMaxSize
()
.
clickable
{
}
)
.
size
(
60
.
dp
)
.
clip
(
CircleShape
)
.
background
(
Shadow2
)
.
padding
(
0
.
dp
)
.
padding
(
10
.
dp
)
)
{
/*Image(
painterResource(Dogs[selectindex].picture),
contentDescription = null,
modifier = Modifier.fillMaxSize()
)*/
}
}
}
Column
(
modifier
=
Modifier
.
height
(
300
.
dp
)
)
{
Image
(
painterResource
(
R
.
drawable
.
manwithdog
),
contentDescription
=
null
,
modifier
=
Modifier
.
fillMaxSize
()
)
}
Spacer
(
Modifier
.
height
(
24
.
dp
))
Button
(
onClick
=
{
/* ... */
},
contentPadding
=
PaddingValues
(
start
=
20
.
dp
,
top
=
20
.
dp
,
end
=
20
.
dp
,
bottom
=
20
.
dp
),
colors
=
ButtonDefaults
.
buttonColors
(
backgroundColor
=
FunctionalGreen
),
)
{
Text
(
"獲得 30 "
,
color
=
Ocean11
,
fontSize
=
20
.
sp
)
Column
(
modifier
=
Modifier
.
height
(
24
.
dp
))
{
Column
(
modifier
=
Modifier
.
height
(
250
.
dp
)
)
{
Image
(
painterResource
(
R
.
drawable
.
coin
),
painterResource
(
R
.
drawable
.
manwithdog
),
contentDescription
=
null
,
modifier
=
Modifier
.
fillMaxSize
()
)
}
Spacer
(
Modifier
.
height
(
24
.
dp
))
Button
(
onClick
=
{
navController
.
navigate
(
HomeSections
.
FEED
.
route
)
},
contentPadding
=
PaddingValues
(
start
=
20
.
dp
,
top
=
20
.
dp
,
end
=
20
.
dp
,
bottom
=
20
.
dp
),
colors
=
ButtonDefaults
.
buttonColors
(
backgroundColor
=
FunctionalGreen
),
)
{
Text
(
"獲得 30 "
,
color
=
Ocean11
,
fontSize
=
20
.
sp
)
Column
(
modifier
=
Modifier
.
height
(
24
.
dp
))
{
Image
(
painterResource
(
R
.
drawable
.
coin
),
contentDescription
=
null
,
)
}
}
Spacer
(
Modifier
.
height
(
15
.
dp
))
Text
(
text
=
"你可以獲得額外20%的獎勵"
)
}
Spacer
(
Modifier
.
height
(
15
.
dp
))
Text
(
text
=
"你可以獲得額外20%的獎勵"
)
}
}
...
...
@@ -135,6 +143,6 @@ fun CompleteFocusMul(modifier: Modifier = Modifier) {
@Composable
fun
CompleteFocusMulPreview
()
{
JetsnackTheme
{
CompleteFocusMul
()
//
CompleteFocusMul()
}
}
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/ui/home/專注過程.kt
View file @
9d141364
...
...
@@ -127,10 +127,10 @@ fun FocusProcess(modifier: Modifier = Modifier, navController: NavHostController
Text
(
text
=
String
.
format
(
"%02dhr %02dm
%02ds
"
,
"%02dhr %02dm"
,
ticks
/
3600
,
(
ticks
/
60
)
%
60
,
ticks
%
60
),
fontSize
=
24
.
sp
,
color
=
Color
.
DarkGray
)
Spacer
(
Modifier
.
height
(
20
.
dp
))
...
...
@@ -144,7 +144,7 @@ fun FocusProcess(modifier: Modifier = Modifier, navController: NavHostController
)
{
LaunchedEffect
(
Unit
)
{
while
(
true
)
{
delay
(
0.1
.
seconds
)
delay
(
0.
00
1
.
seconds
)
if
(!
pause
)
ticks--
}
}
...
...
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/ui/home/專注過程多人.kt
View file @
9d141364
...
...
@@ -25,10 +25,7 @@ import androidx.compose.material.*
import
androidx.compose.material.SnackbarDefaults.backgroundColor
import
androidx.compose.material.icons.Icons
import
androidx.compose.material.icons.filled.Favorite
import
androidx.compose.runtime.Composable
import
androidx.compose.runtime.getValue
import
androidx.compose.runtime.mutableStateOf
import
androidx.compose.runtime.remember
import
androidx.compose.runtime.*
import
androidx.compose.ui.Alignment
import
androidx.compose.ui.Modifier
import
androidx.compose.ui.draw.clip
...
...
@@ -47,10 +44,19 @@ import com.example.jetsnack.database.Dogs
import
com.example.jetsnack.database.Select_index
import
com.example.jetsnack.ui.components.JetsnackDivider
import
com.example.jetsnack.ui.theme.*
import
kotlinx.coroutines.delay
import
kotlin.time.Duration.Companion.seconds
@Composable
fun
FocusProcessMul
(
modifier
:
Modifier
=
Modifier
,
navController
:
NavHostController
)
{
fun
FocusProcessMul
(
modifier
:
Modifier
=
Modifier
,
navController
:
NavHostController
,
total
:
Int
)
{
val
selectindex
by
remember
{
mutableStateOf
(
Select_index
)
}
var
ticks
by
remember
{
mutableStateOf
(
total
)
}
var
img
by
remember
{
mutableStateOf
(
R
.
drawable
.
pause
)
}
var
pause
by
remember
{
mutableStateOf
(
false
)
}
if
(
ticks
==
0
)
{
navController
.
navigate
(
"completeFocusMul"
)
}
Column
(
horizontalAlignment
=
Alignment
.
CenterHorizontally
)
{
Spacer
(
Modifier
.
height
(
48
.
dp
))
Column
(
...
...
@@ -72,8 +78,8 @@ fun FocusProcessMul(modifier: Modifier = Modifier, navController: NavHostControl
)
{
Box
(
modifier
=
Modifier
.
width
(
30
.
dp
)
.
height
(
30
.
dp
),
.
width
(
25
.
dp
)
.
height
(
25
.
dp
),
)
{
Image
(
painterResource
(
R
.
drawable
.
arrow
),
...
...
@@ -124,7 +130,13 @@ fun FocusProcessMul(modifier: Modifier = Modifier, navController: NavHostControl
}
Text
(
text
=
"剩餘時間"
,
fontSize
=
24
.
sp
,
color
=
Color
.
DarkGray
)
Spacer
(
Modifier
.
height
(
5
.
dp
))
Text
(
text
=
"0hr 15m"
,
fontSize
=
24
.
sp
,
color
=
Color
.
DarkGray
)
Text
(
text
=
String
.
format
(
"%02dhr %02dm"
,
ticks
/
3600
,
(
ticks
/
60
)
%
60
),
fontSize
=
24
.
sp
,
color
=
Color
.
DarkGray
)
Spacer
(
Modifier
.
height
(
10
.
dp
))
Box
(
modifier
=
Modifier
...
...
@@ -144,13 +156,21 @@ fun FocusProcessMul(modifier: Modifier = Modifier, navController: NavHostControl
modifier
=
Modifier
.
width
(
50
.
dp
)
.
height
(
50
.
dp
)
.
clickable
{
pause
=
!
pause
}
)
{
LaunchedEffect
(
Unit
)
{
while
(
true
)
{
delay
(
0.01
.
seconds
)
if
(!
pause
)
ticks--
}
}
if
(!
pause
)
img
=
R
.
drawable
.
pause
else
img
=
R
.
drawable
.
play
Image
(
painterResource
(
R
.
drawable
.
play
),
painterResource
(
img
),
contentDescription
=
null
,
modifier
=
Modifier
.
fillMaxSize
()
.
clickable
{
}
)
}
}
...
...
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/ui/home/朋友列表.kt
View file @
9d141364
...
...
@@ -147,7 +147,11 @@ fun GetFriendsList(navController: NavController, state: MutableState<TextFieldVa
SelectFriend
=
filteredFriends
,
navController
=
navController
)
Divider
(
modifier
=
Modifier
.
width
(
380
.
dp
),
thickness
=
2
.
dp
)
Divider
(
modifier
=
Modifier
.
width
(
380
.
dp
),
thickness
=
2
.
dp
,
color
=
Color
.
LightGray
)
}
}
}
...
...
@@ -168,7 +172,7 @@ fun CountryListItem(SelectFriend: Friend, navController: NavController) {
.
size
(
40
.
dp
)
.
clip
(
CircleShape
)
.
background
(
Shadow3
)
.
clickable
{
navController
.
navigate
(
"CheckUpNewFriend/${SelectFriend.sequence}"
)}
.
clickable
{
navController
.
navigate
(
"CheckUpNewFriend/${SelectFriend.sequence}"
)
}
.
padding
(
0
.
dp
)
.
padding
(
5
.
dp
)
)
{
...
...
This diff is collapsed.
Click to expand it.
app/src/main/java/com/example/jetsnack/ui/home/設定.kt
View file @
9d141364
...
...
@@ -45,6 +45,7 @@ import androidx.compose.ui.unit.sp
import
androidx.constraintlayout.compose.MotionLayoutDebugFlags
import
androidx.navigation.NavHostController
import
com.example.jetsnack.R
import
com.example.jetsnack.database.user
import
com.example.jetsnack.ui.components.JetsnackDivider
import
com.example.jetsnack.ui.theme.*
...
...
@@ -87,9 +88,9 @@ fun Settings(modifier: Modifier = Modifier, navController: NavHostController) {
}
}
Spacer
(
Modifier
.
height
(
40
.
dp
))
val
notificationCheckedState
=
remember
{
mutableStateOf
(
false
)
}
val
friendCheckedState
=
remember
{
mutableStateOf
(
true
)
}
val
moonCheckedState
=
remember
{
mutableStateOf
(
true
)
}
val
notificationCheckedState
=
remember
{
mutableStateOf
(
user
.
notification
)
}
val
friendCheckedState
=
remember
{
mutableStateOf
(
user
.
new_friend
)
}
val
moonCheckedState
=
remember
{
mutableStateOf
(
user
.
moon
)
}
SettingsRowSwitch
(
image
=
R
.
drawable
.
friend
,
text1
=
"通知"
,
...
...
@@ -176,7 +177,9 @@ fun SettingsRowSwitch(
)
}
if
(
text1
==
"通知"
)
user
.
notification
=
checkedstate
.
value
else
if
(
text1
==
"遇見新朋友"
)
user
.
new_friend
=
checkedstate
.
value
else
if
(
text1
==
"勿擾模式"
)
user
.
moon
=
checkedstate
.
value
}
@Composable
...
...
This diff is collapsed.
Click to expand it.
app/src/main/res/layout/activity_chat_log.xml
View file @
9d141364
...
...
@@ -26,12 +26,12 @@
<Button
android:id=
"@+id/send_button_chat_log"
style=
"@style/FirebaseUI.Button"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"8dp"
android:layout_marginRight=
"8dp"
android:layout_marginBottom=
"8dp"
android:background=
"
@drawable/rounded_button
"
android:background=
"
#B88FEA
"
android:text=
"SEND"
android:textColor=
"#FFFFFF"
android:textStyle=
"bold"
...
...
@@ -43,7 +43,7 @@
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_marginBottom=
"8dp"
android:background=
"#
8BC34A
"
android:background=
"#
E2D9F8
"
app:layoutManager=
"androidx.recyclerview.widget.LinearLayoutManager"
app:layout_constraintBottom_toTopOf=
"@+id/edittext_chat_log"
app:layout_constraintEnd_toEndOf=
"parent"
...
...
This diff is collapsed.
Click to expand it.
buildSrc/build/kotlin/buildSrcjar-classes.txt
View file @
9d141364
C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$Accompanist.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Activity.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Compose.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$ConstraintLayout.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Lifecycle.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Navigation.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Test$Ext.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Test.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$Coil.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$Coroutines.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$JUnit.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$Kotlin.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs.class;C:\Users\david\Downloads\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Versions.class
\ No newline at end of file
C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$Accompanist.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Activity.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Compose.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$ConstraintLayout.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Lifecycle.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Navigation.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Test$Ext.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX$Test.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$AndroidX.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$Coil.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$Coroutines.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$JUnit.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs$Kotlin.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Libs.class;C:\Users\eric\Desktop\app\final\buildSrc\build\classes\kotlin\main\com\example\jetsnack\buildsrc\Versions.class
\ No newline at end of file
This diff is collapsed.
Click to expand it.
buildSrc/build/libs/buildSrc.jar
View file @
9d141364
No preview for this file type
This diff is collapsed.
Click to expand it.
buildSrc/build/pluginUnderTestMetadata/plugin-under-test-metadata.properties
View file @
9d141364
implementation-classpath
=
C
\:
/Users/
david/Downloads
/final/buildSrc/build/classes/java/main;C
\:
/Users/
david/Downloads
/final/buildSrc/build/classes/groovy/main;C
\:
/Users/
david/Downloads
/final/buildSrc/build/classes/kotlin/main;C
\:
/Users/
david/Downloads
/final/buildSrc/build/resources/main
implementation-classpath
=
C
\:
/Users/
eric/Desktop/app
/final/buildSrc/build/classes/java/main;C
\:
/Users/
eric/Desktop/app
/final/buildSrc/build/classes/groovy/main;C
\:
/Users/
eric/Desktop/app
/final/buildSrc/build/classes/kotlin/main;C
\:
/Users/
eric/Desktop/app
/final/buildSrc/build/resources/main
This diff is collapsed.
Click to expand it.
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
Menu
Projects
Groups
Snippets
Help