在构建 gradle 时,我收到以下消息:
API 'BaseVariant.getApplicationIdTextResource' is obsolete and has been replaced with 'VariantProperties.applicationId'
我正在使用Android Studio 4.1 Canary 10和gradle:4.1.0-alpha10
有没有人在运行项目时见过这个
Error:Module 'Android' production: java.lang.NoClassDefFoundError: com/android/resources/ResourceFolderType
Run Code Online (Sandbox Code Playgroud)
我在 Android Studio 3.6.1 上使用 Eclipse 编译器 没有什么有用的显示在 google 上
我刚刚安装了Android Studio,并试图预览我的应用程序,但每当我在任何设备或API上启动AVD仿真器时崩溃,但只有当我将AVD的窗口刷到我的第二台显示器时它才会崩溃.
我的电脑配置:i7-6700k,16Gb RAM和AX配置的GTX 1060
:
过去任何人都有同样的问题或有解决方案吗?如果我没有解释得足够多,请随时向我询问更多信息
windows android emulation android-virtual-device android-studio
在我的应用程序中,我有2 种口味,并且我想res/color为每种口味更改应用程序的颜色 () !
请在文件中查看我的代码build.gradle:
flavorDimensions "default"
productFlavors {
app1 {
applicationId "com.app.myApp1"
resValue "string", "app_name", "App 1"
manifestPlaceholders = [
appIcon: "@drawable/logo_app1"
]
}
app2 {
applicationId "com.app.myApp2"
resValue "string", "app_name", "App 2"
manifestPlaceholders = [
appIcon: "@drawable/logo_app2"
]
}
}
Run Code Online (Sandbox Code Playgroud)
我不知道如何设置color.xml每种口味!
这怎么可能?
我想知道将 APIKEY 放入所有 REST 请求中的最佳方法,而不必将其添加到请求的参数中。
目前我只接到了几个电话,但我正在尝试进一步了解。
@GET(".")
fun getSearch(@Query("s") text: String, @Query("apikey") APIKEY: String) : Observable<ResponseSearch>
Run Code Online (Sandbox Code Playgroud)
我想知道是否有办法不在每次调用的变量中包含 APIKEY
我正在从我的 API 中获取一个列表,例如 25 个国家/地区的标签,例如德国、英国、法国、意大利等......我想要 2 行,chips每行10个,如果我得到 30 个标签下次我取东西时,我想要 3 排,每排 10 个chips等等...
到目前为止,我还没有找到任何允许我这样做的东西。我快速浏览了一下,Flexbox-Layout但它似乎不符合我的需求,我目前有下面的代码,但我正在考虑用一个Recyclerview
分段
viewModel.videoSelected.observe(viewLifecycleOwner, object : Observer<VideoPage> {
override fun onChanged(videoPage: VideoPage?) {
videoPage?.tags ?: return
val chipGroup = binding.chipGroup
val chipGroupInflater = LayoutInflater.from(chipGroup.context)
val children = videoPage.tags.map { tagName ->
val chip = chipGroupInflater.inflate(R.layout.chip_video_tag, chipGroup, false) as Chip
chip.text = tagName
chip.tag = tagName
chip.setOnClickListener {
Toast.makeText(context, tagName, Toast.LENGTH_SHORT).show()
}
chip
}
for (chip in children) {
chipGroup.addView(chip)
}
} …Run Code Online (Sandbox Code Playgroud) 我正在尝试在我的 exoplayer 上的搜索栏上添加预览,就像在 youtube 或 plex 中一样(参见下图)
我找到了这个库,但它还不是最新的。
我已经有了每帧的图像,但我不知道如何将它们集成到我的中Exoplayer,我正在寻找教程或解释,我应该从哪里开始,因为我有点迷失在那里。
我Timebar.onScrubListener在浏览 exoplayer 文档时发现的。我猜我将使用这 3 个侦听器来获取磨砂膏的位置并显示相应的图像。
我必须通过对Room数据库的异步调用来更新UI,但是当我收到此错误时:android.view.ViewRootImpl $ CalledFromWrongThreadException:只有创建视图层次结构的原始线程才能触摸其视图。
//收藏夹Presenter.kt
GlobalScope.launch {
favoritesView.showFavorites(ProductProvider.getAllProducts() as ArrayList<Product>)
}
Run Code Online (Sandbox Code Playgroud)
// ProductProvider.kt
fun getAllProducts() : MutableList<Product> {
return dao.getAllProducts()
}
Run Code Online (Sandbox Code Playgroud)
// ProductDao.kt
@Query("SELECT * FROM product")
fun getAllProducts(): MutableList<Product>
Run Code Online (Sandbox Code Playgroud)
我需要通过ProductProvider更新UI,因为我将对所有实体使用可靠的解决方案。
我在使用数据包装时遇到了一个小问题Resource,我不知道如何在数据绑定中使用它。
密封等级:
sealed class Resource<out T: Any> {
data class Success<out T: Any>(val data: T): Resource<T>()
data class Error(val exception: Throwable): Resource<Nothing>()
object Loading: Resource<Nothing>()
}
Run Code Online (Sandbox Code Playgroud)
我有这个val product: LiveData<Resource<NetworkProductDetails>>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable
name="viewModel"
type="my.package.ProductDetailsViewModel" />
</data>
<TextView
android:id="@+id/product_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@{viewModel.product.productName}"
android:textAppearance="?attr/textAppearanceBody1"
android:gravity="center"/>
...
</layout>
Run Code Online (Sandbox Code Playgroud)
我遇到了一个问题,因为viewModel.product不是NetworkProductDetails但是Resource<NetworkProductDetails>,而且我的 XML/数据绑定不知道如何处理它。
我找到了一种工作方式,但我想知道是否有更优雅的方式。
第一个解决方案:
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable
name="viewModel"
type="my.package.ProductDetailsViewModel" />
<variable
name="product"
type="my.package.NetworkProductDetails" />
</data>
<TextView
android:id="@+id/product_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@{product.productName}"
android:textAppearance="?attr/textAppearanceBody1"
android:gravity="center"/>
... …Run Code Online (Sandbox Code Playgroud)