小编Ioa*_* P.的帖子

Android Studio更新到版本3.1错误

我刚刚将Android Studio更新为最新版本3.1,由于以下错误,我无法执行任何操作:

org.gradle.internal.resource.transport.http.HttpRequestException: Could not HEAD 'https://dl.google.com/dl/android/maven2/org/jetbrains/annotations/13.0/annotations-13.0.pom'.
Run Code Online (Sandbox Code Playgroud)

它还说:

Gradle project sync failed.
Run Code Online (Sandbox Code Playgroud)

这是我的错误的样子:

在此输入图像描述

在此输入图像描述

谢谢!

android-studio

5
推荐指数
1
解决办法
645
查看次数

tring覆盖方法时出现奇怪的Eclipse行为

我有这两个类,Dog并且Beagle扩展了Dog.

class Dog {
    protected String bark() {return "woof "; }
}
class Beagle extends Dog {
    private String bark() { return "arf "; }
}
class Test {
    public static void main(String args[]) {
        Dog[] dogs = {new Dog(), new Beagle()};
        for(Dog d : dogs)
            System.out.print(d.bark());
    }
}
Run Code Online (Sandbox Code Playgroud)

当我使用任何其他编辑器而不是Eclipse时,上面的代码甚至都没有编译.我收到这个错误:

试图在Beagle类中为bark()方法分配较弱的访问权限.

您还可以在此处查看此行为.

如果我使用Eclipse Indigo(版本:3.7.2),则此代码编译良好,输出为:woof woof.

请让我明白哪一个是正确的,为什么?

提前致谢!

java eclipse inheritance overriding

4
推荐指数
1
解决办法
58
查看次数

如何在Cloud Firestore中使用startAt()和endAt()?

我读过Dan McGrath从这个问题得到的答案,他说在Firestore中,以下代码行是等效的:

myRef.startAt(searchText).endAt(searchText + "\uf8ff");
Run Code Online (Sandbox Code Playgroud)

这条线在Firebase Realtime数据库中工作完美,但是我试图在Cloud Firestore中找到几天的等效项。有人可以帮我吗?

提前致谢!

java android firebase google-cloud-firestore

4
推荐指数
1
解决办法
4946
查看次数

使用Jetpack Compose 1.0.0-alpha11时如何手动导入扩展函数?

List<Item>想使用 Jetpack Compose 显示它。在版本“1.0.0-alpha10”中,此代码:

@Composable
fun ItemsScreen(items: List<Item>) {
    item?.let {
        LazyColumn {
            items(
                    items = items
            ) { item ->
                ItemCard(item = item)
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

工作正常,但是,根据新的更新,从“1.0.0-alpha11”开始:

LazyColumn/LazyRow/LazyVerticalGrid 范围的新 items(count: Int) 工厂方法。items(items: List) 和 itemsIndexed(items: List) 现在是扩展函数,因此您在使用时必须手动导入它们。

我的应用程序不再工作了。我不确定我是否理解:

items(items: List) 现在是扩展函数,因此您必须手动导入。

这是什么意思?如何解决这个问题?

提前致谢。

android kotlin android-jetpack-compose composable

4
推荐指数
1
解决办法
1148
查看次数

如何在 Jetpack Compose 中将颜色资源转换为 Color 对象?

我有一个文本,我想画一个圆圈,该圆圈的颜色应该存在于我的资源文件中。

Text(
    modifier = Modifier.align(Alignment.TopEnd).drawBehind {
        drawCircle(
            color = colorResource(R.color.primary),
            radius = 96.00f
        )
    },
    text = "X"
)
Run Code Online (Sandbox Code Playgroud)

但我得到:

@Composable 调用只能在 @Composable 函数的上下文中发生

如果我使用color = Color.Red,效果很好。所以我不想使用任何这些颜色,我想使用我的颜色。所以我想进行转换,但我找不到任何解决方案。我怎样才能转换它?

android kotlin android-jetpack-compose

4
推荐指数
1
解决办法
1621
查看次数

ModalNavigationDrawer 在 Jetpack Compose 中不会完全崩溃

这是产生这种奇怪行为的代码:

ModalNavigationDrawer(
    drawerState = drawerState,
    drawerContent = {
        Column(
            modifier = Modifier.fillMaxSize()
        ) {
            items.forEach { item ->
                NavigationDrawerItem(
                    modifier = Modifier.padding(NavigationDrawerItemDefaults.ItemPadding),
                    icon = {
                        Icon(
                            imageVector = item.icon,
                            contentDescription = null
                        )
                    },
                    label = {
                        Text(
                            text = item.name
                        )
                    },
                    onClick = {},
                    selected = true
                )
            }
        }
    },
    content = {
        Scaffold(
            topBar = {},
            content = { padding ->
                Box(
                    modifier = Modifier.fillMaxSize().padding(padding)
                ) {
                    Box(
                        modifier = Modifier.fillMaxSize(),
                        contentAlignment = Alignment.Center
                    ) { …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-jetpack-compose android-jetpack-compose-material3

4
推荐指数
1
解决办法
1161
查看次数

如何在 Node.js 中创建函数配置变量?

我正在尝试Algolia按照说明实施:here

有一条消息说: App ID and API Key are stored in functions config variables

const ALGOLIA_ID = functions.config().algolia.app_id;
const ALGOLIA_ADMIN_KEY = functions.config().algolia.api_key;
const ALGOLIA_SEARCH_KEY = functions.config().algolia.search_key;
Run Code Online (Sandbox Code Playgroud)

我根本不熟悉 Node.js。我应该如何创建functions config variables?它应该是另一个文件或另一个函数或两者兼而有之?

谢谢!

javascript node.js

3
推荐指数
1
解决办法
1433
查看次数

使用 AnimatedNavHost 时屏幕上不显示任何内容

我正在使用 Accompanist 动画库:

implementation "com.google.accompanist:accompanist-navigation-animation:0.24.0-alpha"
Run Code Online (Sandbox Code Playgroud)

我有以下 AnimatedNavHost:

val navController = rememberAnimatedNavController()
AnimatedNavHost(
    navController = navController,
    startDestination = "auth",
    enterTransition = { EnterTransition.None },
    exitTransition = { ExitTransition.None }
) {
    composable(
        route = "auth"
    ) {
        AuthScreen(
            navController = navController
        )
    }
    composable(
        route = "profile"
    ) {
        ProfileScreen(
            navController = navController
        )
    }
}
Run Code Online (Sandbox Code Playgroud)

我的 AuthScreen 很简单:

Box(
    modifier = Modifier.fillMaxSize().padding(bottom = 48.dp),
    contentAlignment = Alignment.BottomCenter
) {
    Button(
        onClick = {
            signIn()
        }
    ) {
        Text(
            text = …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-jetpack-compose jetpack-compose-navigation

3
推荐指数
1
解决办法
1686
查看次数

是否有必要将DAO内部的函数定义为挂起?

我正在使用 Room 创建一个简单的应用程序。我创建了一个 DAO 接口:

interface ItemDao {
    @Insert(onConflict = IGNORE)
    fun addItem(item: Item)
}
Run Code Online (Sandbox Code Playgroud)

以及存储库接口:

interface ItemRepository {
    fun addItem(item: Item)
}

Run Code Online (Sandbox Code Playgroud)

下面是该函数的实现:

class ItemRepositoryImpl(
    private val itemDao: ItemDao
) : ItemRepository {
    override fun addItem(item: Item) = itemDao.addItem(item)
}
Run Code Online (Sandbox Code Playgroud)

在 ViewModel 类中,我使用 viewModelScope 启动一个协程:

class ItemViewModel @Inject constructor(
    private val repo: ItemRepository
) : ViewModel() {
    fun addItem(item: Item) = viewModelScope.launch(Dispatchers.IO) {
        repo.addItem(item)
    }
}
Run Code Online (Sandbox Code Playgroud)

当我addItem从 UI 调用时,该项目已成功添加到 Room。现在的问题是,是否必须将ItemDao接口内的addItem函数设置为挂起函数?如果是,为什么?我真的很困惑。

编辑

这是我创建数据库实例的方法:

fun provideItemDb( …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-room kotlin-coroutines

3
推荐指数
1
解决办法
653
查看次数

如何在 Jetpack Compose 中的现有 LazyColumn 之上添加 CircularProgressIndicator?

我有以下屏幕:

fun ItemsScreen(
    viewModel: ItemsViewModel = hiltViewModel()
) {
    val showProgressBarState = remember { mutableStateOf(false) }
    if (showProgressBarState.value) { ShowProgressBar() }

    when(val resource = viewModel.state.value) {
        is Loading -> ShowProgressBar() //Works perfectly
        is Success -> LazyColumn {
            items(
                items = resource.data
            ) { item ->
                ItemCard(
                    item = item
                )
            }
            when(val r = viewModel.s.value) {
                is Loading -> showProgressBarState.value = true
                is Success -> showProgressBarState.value = false
                is Failure -> Log.d(TAG, "Failure")
            }
        }
        is Failure -> Text(
            text …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-jetpack android-jetpack-compose

2
推荐指数
1
解决办法
6402
查看次数