嘿,我收到了未决意图的警告。所以我根据这个问题和这个中等帖子包围了检查sdk的检查。我收到警告消息
缺少PendingIntent可变性标志
val pendingIntent: PendingIntent = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_IMMUTABLE or PendingIntent.FLAG_UPDATE_CURRENT)
} else {
PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT)
}
Run Code Online (Sandbox Code Playgroud)
如何删除此警告消息?
我正在 jetpack compose 的文本字段中工作。我想建立这样的东西
TextField(
value = value,
onValueChange = {
value = it
},
modifier = Modifier
.requiredWidth(56.dp)
.padding(10.dp),
colors = TextFieldDefaults.textFieldColors(
backgroundColor = OffWhite,
focusedIndicatorColor = TealLight,
cursorColor = TealLight
)
)
Run Code Online (Sandbox Code Playgroud)
场景1
当我尝试这个时
.requiredWidth(56.dp)
Run Code Online (Sandbox Code Playgroud)
或者
.width(56.dp)
Run Code Online (Sandbox Code Playgroud)
设计上看起来是这样的
场景2
当我尝试这个时
.widthIn(min = 56.dp)
Run Code Online (Sandbox Code Playgroud)
看起来像这样
场景3
当我尝试这个时
.fillMaxWidth()
Run Code Online (Sandbox Code Playgroud)
它占据了整个屏幕的宽度。
所以我的问题是哪一个用于哪种情况?在我的情况下最好的属性是什么?
我对在可组合函数中使用 viewmodel 几乎没有疑问。我正在添加我的活动代码,我正在传递我的意图包。
viewmodel在活动中创建全局是最佳实践吗?输入活动.kt
class InputActivity : ComponentActivity() {
private val viewModel by viewModel<InputViewModel>()
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setupViewModel()
setContent {
Theme {
AppBarScaffold(
displayHomeAsUpEnabled = true,
titleId = R.string.personal_health
) {
viewModel.OptionData?.let {
Input(it)
}
}
}
}
}
private fun setupViewModel() {
viewModel.optionData = intent.getParcelableExtra("optiondata")
}
}
Run Code Online (Sandbox Code Playgroud)
我有很多可组合的函数
输入
@Composable
fun Input(optionData: OptionData) {
var value by rememberSaveable {
mutableStateOf(false)
}
Column(
modifier = Modifier
.fillMaxHeight()
.verticalScroll(rememberScrollState())
verticalArrangement = Arrangement.SpaceBetween
) {
InputItem() …Run Code Online (Sandbox Code Playgroud) android kotlin android-viewmodel android-jetpack android-jetpack-compose
大家好,我正在学习项目中的副作用。我想知道什么时候应该使用LaunchedEffect以及SideEffect在什么情况下使用。我正在添加一些使用这两种效果的代码。如果我在这里做错了,请让我知道。
第一次使用 LaunchedEffect,请指导我是否需要此功能的效果。
@Composable
fun BluetoothRequestContinue(multiplePermissionsState: MultiplePermissionsState) {
var launchPermission by remember { mutableStateOf(false) }
if (launchPermission) {
LaunchedEffect(Unit) {
multiplePermissionsState.launchMultiplePermissionRequest()
}
}
AbcMaterialButton(
text = stringResource(R.string.continue_text),
spacerHeight = 10.dp
) {
launchPermission = true
}
}
Run Code Online (Sandbox Code Playgroud)
第二次使用 SideEffect 使用意图打开设置
@Composable
fun OpenPermissionSetting(router: Router = get()) {
val activity = LocalContext.current as Activity
var launchSetting by remember { mutableStateOf(false) }
if (launchSetting) {
SideEffect {
activity.startActivity(router.permission.getPermissionSettingsIntent(activity))
}
}
AbcMaterialButton(
text = stringResource(R.string.open_settings),
spacerHeight = 10.dp
) …Run Code Online (Sandbox Code Playgroud) Scaffold我在我的函数中使用@Composable。里面content = {我正在使用LazyColumn. 我想要Top Start和Top End转角。像这样的东西
预期输出
我从这里尝试了这段代码,但它不起作用。
package com.example.scrollcompose
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Favorite
import androidx.compose.material.icons.filled.Menu
import androidx.compose.material3.*
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.example.scrollcompose.ui.theme.ScrollComposeTheme
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
ScrollComposeTheme {
// …Run Code Online (Sandbox Code Playgroud) android kotlin android-jetpack android-jetpack-compose android-jetpack-compose-material3
我想在 jetpack compose 中创建加载微调器。我没有视频,但我有图像。
我只知道CircularProgressIndicator但不知道如何自定义并看起来像上图一样。
CircularProgressIndicator(
progress = progress,
color = progressColor,
strokeWidth = strokeWidth,
modifier = Modifier.fillMaxSize()
)
Run Code Online (Sandbox Code Playgroud)
提前致谢。
更新
我发现该视频看起来像 Twitter 在网络中加载旋转器。我做了小视频截图。请在YouTube上观看
嘿,我正在使用Paging 3库和ViewPager 2。它加载无限的数据。
\nimplementation "androidx.paging:paging-runtime-ktx:3.0.0-alpha07"\nRun Code Online (Sandbox Code Playgroud)\n数据源.kt
\npackage com.example.viewpagerexample\n\nimport java.util.*\n\nclass DataSource(\n private val size: Int = 5,\n private val currentDate: Date,\n private val limitDate: Date?\n) {\n\n fun returnData(pageNumber: Int): List<Date> {\n\n val dateList = mutableListOf<Date>()\n val startDateForPage = startDate(pageNumber)\n val tempCalendar = Calendar.getInstance()\n\n tempCalendar.time = startDateForPage\n val lastDateForPage = endDate(startDateForPage)\n\n while (tempCalendar.time < lastDateForPage) {\n if (limitDate == null ||\n tempCalendar.time.before(limitDate) ||\n tempCalendar.time == limitDate\n ) {\n dateList.add(tempCalendar.time)\n tempCalendar.add(Calendar.DATE, 1)\n } else {\n break\n …Run Code Online (Sandbox Code Playgroud) android kotlin android-paging android-paging-library android-paging-3
嘿,我正在 kotlin 中工作 WorkManager。我不明白一些代码并给我带来了这个错误。有人能更详细地向我解释一下吗?
2022-01-06 16:48:33.501 14483-14483/com.example.app E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.app, PID: 14483
java.lang.IllegalArgumentException: Expedited jobs cannot be delayed
at androidx.work.WorkRequest$Builder.build(WorkRequest.java:326)
at com.example.app.tracker.TrackerHelper.setupNotificationWorkerForNextLaunch(TrackerHelper.kt:124)
at com.example.app.tracker.TrackerHelper.setReminderOff(TrackerHelper.kt:36)
at com.example.app.tracker.TrackerHelper.switchReminder(TrackerHelper.kt:70)
at com.example.app.tracker.TrackerSettingsViewModel.switchReminder(TrackerSettingsViewModel.kt:34)
at com.example.app.tracker.TrackerSettingsViewModel.enableReminder(TrackerSettingsViewModel.kt:100)
at com.example.app.tracker.TrackerSettingsViewModel.setupReminderRow$lambda-1(TrackerSettingsViewModel.kt:85)
at com.example.app.tracker.TrackerSettingsViewModel.lambda$5Q3PVjBphM6lb1pU0jZdN9GXKaE(Unknown Source:0)
at com.example.app.tracker.-$$Lambda$TrackerSettingsViewModel$5Q3PVjBphM6lb1pU0jZdN9GXKaE.onCheckedChanged(Unknown Source:2)
at android.widget.CompoundButton.setChecked(CompoundButton.java:222)
at androidx.appcompat.widget.SwitchCompat.setChecked(SwitchCompat.java:1095)
at androidx.appcompat.widget.SwitchCompat.toggle(SwitchCompat.java:1090)
at android.widget.CompoundButton.performClick(CompoundButton.java:144)
at android.view.View.performClickInternal(View.java:7418)
at android.view.View.access$3700(View.java:835)
at android.view.View$PerformClick.run(View.java:28676)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7839)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1003)
Run Code Online (Sandbox Code Playgroud)
嘿,我是 kotlin flow的新手。我正在尝试打印流量大小。众所周知,列表具有size()功能。我们有类似的flow函数吗?
val list = mutableListof(1,2,3)
println(list.size)
Run Code Online (Sandbox Code Playgroud)
输出
2
Run Code Online (Sandbox Code Playgroud)
我们如何获得流量中的大小值?
dataMutableStateFlow.collectLatest { data ->
???
}
Run Code Online (Sandbox Code Playgroud)
谢谢
嘿伙计们,我怎样才能更新到最新版本,因为我找不到最新的gradle-plugin。有人可以指导我吗?
构建.gradle(:应用程序)
plugins {
id "com.android.application"
id "org.jetbrains.kotlin.android"
}
android {
namespace "com.abc.xyz"
compileSdk 34
defaultConfig {
applicationId "com.abc.xyz"
minSdk 24
targetSdk 34
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
vectorDrawables {
useSupportLibrary true
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro"
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = "1.8"
}
buildFeatures {
compose true
}
composeOptions {
kotlinCompilerExtensionVersion compose_compiler_version
}
packagingOptions {
resources {
excludes += "/META-INF/{AL2.0,LGPL2.1}"
}
} …Run Code Online (Sandbox Code Playgroud) android gradle kotlin android-gradle-plugin kotlin-gradle-plugin
kotlin ×10
android ×9
android-jetpack-compose-material3 ×1
gradle ×1
kotlin-flow ×1
warnings ×1