有关Android视图的问题。视图可以在Android Layout XML或Java代码中定义。使用此标记的问题涉及一般的查看实践或建议。有关特定视图,请参阅此标记的信息。有关布局的问题,请使用[tag:android-layout]。
撰写 ModalBottomSheet 内的 Emoji2 表情符号选择器不滚动
我需要使用 androidx 中的 emoji2-emojipicker,它是通过 XML 视图制作的: 我需要使用 androidx 中的 emoji2-emojipicker,它是通过 XML 视图制作的: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> <androidx.recyclerview.widget.RecyclerView android:id="@+id/emoji_picker_header" android:layout_width="wrap_content" android:layout_height="@dimen/emoji_picker_header_height" android:paddingEnd="@dimen/emoji_picker_header_padding" android:paddingStart="@dimen/emoji_picker_header_padding" /> <androidx.recyclerview.widget.RecyclerView android:id="@+id/emoji_picker_body" android:layout_width="match_parent" android:layout_height="match_parent" /> </LinearLayout> (来源https://github.com/androidx/androidx/tree/androidx-main/emoji2/emoji2-emojipicker和https://developer.android.com/jetpack/androidx/releases/emoji2) 我在撰写中像这样使用它: AndroidView( factory = { context -> EmojiPickerView(context) }, modifier = Modifier .fillMaxWidth() .height(300.dp) ) 在脚手架或柱子等普通表面上使用表情符号选择器没有任何问题,它滚动得很好并且不会滞后。 如果我将表情符号选择器放入另一个可滚动可组合项中,例如 ModalBottomSheet,它就不再滚动。 为了使其滚动,我需要将 verticalScroll(rememberScrollState()) 修饰符添加到 AndroidView 中,但这会使其变得滞后,并且需要很长时间才能加载+如果我使其像那样可滚动,则表情符号选项卡由于某种原因无法工作。 我猜它很滞后,因为我告诉 RecyclerView 它具有无限的高度,因此它会立即渲染所有表情符号,而不是懒惰地渲染。 阅读周围的内容,当 RecyclerView 位于另一个可滚动可组合项中时,滚动事件似乎无法通过子父可组合项正确传播。关于如何解决这个问题有什么建议吗? 这是一个演示,显示了一个可以正常工作的屏幕(任务屏幕)和一个不能正常工作的屏幕:https://drive.google.com/file/d/1vU94uPwBTtpDg8hb0JauqZmw-LHyP9Mz/view ?usp=sharing(在此视频中,我在 ModalBottomSheet 表情符号选择器中添加了 ModalBottomSheet 修饰符以使其可滚动,否则它不会滚动,而任务中的表情符号选择器没有该修饰符) 您找到解决这个问题的方法了吗? 我可以使用 NestedScrollInterOpConnection 使其滚动,但性能受到了巨大影响。如果您找到任何替代解决方案,请在这里分享
Android Studio 会自动导入 fake.`package`.name.`for`.sync.R`。如何纠正?
我创建了一个带有片段视图和 ViewModel 的新模块。每次通过视图绑定或 getString() 引用视图或资源属性时,它都会奇怪地自动导入 fake.package.name.for.syn...
ShapeDrawable 椭圆形(描边样式)的边缘被剪切(Android Studio)
我是 Android Studio 的新手,目前我正在尝试以编程方式创建一个随机颜色、描边宽度和大小的椭圆形(不是实心,只是描边): 长 randomSeedm = 系统。
我想设置动态创建的edittext的背景并同时具有下划线。现在它有背景,但没有下划线。当我删除 setBackground() 时
当我的活动开始时,我使用以下调用隐藏系统导航栏。 WindowInsetsControllerCompat(window, window.decorView).hide(WindowInsetsCompat.Type.systemBars()) 当用户...
有一个视图容器(蓝色),它设置为几乎整个屏幕宽度。有时此容器内显示的视图不需要具有容器的完整宽度 -...
我正在尝试让视频在我的应用程序后台运行。 我到处搜索,我能找到的最接近的是另一篇文章: 将视频文件集成到 Android 应用程序中作为应用程序
问题 我正在为 Wear OS 开发一个物联网应用程序,我想用搜索栏设置灯光的亮度。但是,从左向右移动搜索栏会导致片段消失...
有没有办法仅使用约束布局将图像的一半放置在另一个图像的顶部。我知道可以使用相对布局和框架布局来完成,但在约束布局的情况下是存在的
Jetpack Compose - SelectionContainer - 如何添加缺失的功能?
我正在尝试使用 Jetpack Compose 复制一些基于视图的选定文本行为。在这两种情况下,我都长按了 URL 的中间。 基于视图: 我正在尝试使用 Jetpack Compose 复制一些基于视图的选定文本行为。在这两种情况下,我都长按了 URL 的中间。 基于视图: <TextView ... android:textIsSelectable="true" /> 撰写: SelectionContainer { Text(...) } 正如您在屏幕截图中看到的,Compose 布局中缺少一些选项。 有没有办法添加这个?是的,我知道我可以使用AndroidView,但是有没有更复杂的方法来做到这一点?以下是 View 布局中的内容,但 Compose 布局中缺少: “分享” “全选” 选择网址时“打开” (基于人工智能?)自动选择 URL。点击并按住 URL 上的任意位置会自动选择 URL 部分。 编辑:我不是在要求一个 custom 工具栏,我是在要求 Google 在 TextView 中提供的工具栏。 虽然这仍然不受支持,但如果您使用 TextField 而不是 Text,您至少也会获得“全选”选项。 @Composable private fun SelectableTextField() { TextField( value = "This is a selectable text", onValueChange = {}, keyboardOptions = KeyboardOptions(imeAction = ImeAction.Done), readOnly = true, colors = TextFieldDefaults.colors( focusedContainerColor = Color.Transparent, unfocusedContainerColor = Color.Transparent, focusedIndicatorColor = Color.Transparent, unfocusedIndicatorColor = Color.Transparent ) ) }
如果这是一个愚蠢的问题,请原谅我,我是初学者。 假设我有两个设备,设备 A 在物理上和像素密度上都小于设备 B。 在设备 A 上,我的一条文本 v...
如果我更新 ViewModel,消耗此数据的 View 应该会自动更新,对吧?我缺少什么? 这是 MainActivity 类: 类 MainActivity : AppCompatActivity() {
对不起我的英语不好。我在更新以编程方式创建的视图/按钮时遇到了很多麻烦。我从 Json 数组中提取了一些信息并以编程方式将其分发给 ...
Android:如何将视图设置为在将其定位在两个固定视图之间时滚动?
我有一个固定的工具栏,一个带有 layout_scrollFlags="scroll" 的视图,一个用于过滤的固定视图和一个回收器视图,在 CoordinatorLayout 中按照从上到下的顺序排列。 这个我...
我想将两个 TextView 并排放置,让它们根据内容展开。 两个 TextView 的内容都是完全动态且不可预测的,因此我想要
有一些方法(AccessibilityService/system app/adb/root device)可以触摸可触摸覆盖层后面的视图?我记得曾经测试过AirDroid Business Black Screen Mo...
有一些方法(AccessibilityService/system app/adb/root device)可以触摸可触摸覆盖层后面的视图?我记得曾经测试过 AirDroid 黑屏模式,他们
有一些方法(AccessibilityService/system app/adb/root device)可以触摸可触摸覆盖层后面的视图? 在否定的情况下,我如何才能拦截和阻止用户
如何在 Compose 中预览 SciChartSurface?
我想使用@Preview 注释在 Compose 中预览 SciChartSurface。 我收到错误 java.lang.NoClassDefFoundError: 无法初始化类 com.scichart.drawing.canvas.RenderSurface$d @
我有一个奇怪的问题。我花了很多时间在 Android 中设计了一个自制的画布视图,它应该是一个水箱(即通过 R.drawable.hot_water_tank_container 插入的边缘)......